X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ef5f8ab62657cd12c9c4be5e24dd45f3cd464ab9..418b74a078f6502deff7ad4a4d562b9cc496774d:/src/unix/utilsunx.cpp diff --git a/src/unix/utilsunx.cpp b/src/unix/utilsunx.cpp index 53f09c4b84..445f88b9fa 100644 --- a/src/unix/utilsunx.cpp +++ b/src/unix/utilsunx.cpp @@ -253,11 +253,7 @@ long wxExecute( const wxString& command, int flags, wxProcess *process ) argv[argc] = NULL; // do execute the command -#if wxUSE_UNICODE - long lRc = -1; -#else long lRc = wxExecute(argv, flags, process); -#endif // clean up argc = 0; @@ -566,8 +562,14 @@ long wxExecute(wxChar **argv, // // NB: do *not* use vfork() here, it completely breaks this code for some // reason under Solaris (and maybe others, although not under Linux) - pid_t pid = fork(); - if ( pid == -1 ) // error? + // But on OpenVMS we do not have fork so we have to use vfork and + // cross our fingers that it works. +#ifdef __VMS + pid_t pid = vfork(); +#else + pid_t pid = fork(); +#endif + if ( pid == -1 ) // error? { wxLogSysError( _("Fork failed") );