+ wxLogSysError(_("Cannot open URL '%s'"), relativeURL.c_str());
+ return false;
+ }
+
+ return true;
+#elif defined(__WXPM__)
+
+ wxString url;
+ url << m_MapFile << '\\' << relativeURL.BeforeFirst('#');
+// will have to fix for OS/2, later.....DW
+// bool bOk = (int)ShellExecute(NULL, "open", url,
+// NULL, NULL, SW_SHOWNORMAL ) > 32;
+// if ( !bOk )
+// {
+// wxLogSysError(_("Cannot open URL '%s'"), relativeURL.c_str());
+// return false;
+// }
+// else
+ return true;
+
+#elif defined(__DOS__)
+
+ wxString command;
+ command = m_BrowserName;
+ command << wxT(" file://")
+ << m_MapFile << WXEXTHELP_SEPARATOR << relativeURL;
+ return wxExecute(command) != 0;
+
+#else // UNIX
+ wxString command;
+
+#ifndef __EMX__
+ if(m_BrowserIsNetscape) // try re-loading first
+ {
+ wxString lockfile;
+ wxGetHomeDir(&lockfile);
+#ifdef __VMS__
+ lockfile << WXEXTHELP_SEPARATOR << wxT(".netscape]lock.");
+ struct stat statbuf;
+ if(stat(lockfile.fn_str(), &statbuf) == 0)
+#else
+ lockfile << WXEXTHELP_SEPARATOR << wxT(".netscape/lock");
+ struct stat statbuf;
+ if(lstat(lockfile.fn_str(), &statbuf) == 0)
+ // cannot use wxFileExists, because it's a link pointing to a
+ // non-existing location if(wxFileExists(lockfile))
+#endif