X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/308978f6aa40cd791d9ba0cd437a404e68d30734..597fadcef5fb642e168fe37997e4341710a98465:/src/unix/utilsunx.cpp diff --git a/src/unix/utilsunx.cpp b/src/unix/utilsunx.cpp index 0c2e7f37d2..deeaa836ba 100644 --- a/src/unix/utilsunx.cpp +++ b/src/unix/utilsunx.cpp @@ -404,10 +404,13 @@ long wxExecute(wxChar **argv, wxProcess *process) { // for the sync execution, we return -1 to indicate failure, but for async - // cse we return 0 which is never a valid PID - long errorRetCode = sync ? -1 : 0; + // case we return 0 which is never a valid PID + // + // we define this as a macro, not a variable, to avoid compiler warnings + // about "ERROR_RETURN_CODE value may be clobbered by fork()" + #define ERROR_RETURN_CODE ((sync) ? -1 : 0) - wxCHECK_MSG( *argv, errorRetCode, wxT("can't exec empty command") ); + wxCHECK_MSG( *argv, ERROR_RETURN_CODE, wxT("can't exec empty command") ); #if wxUSE_UNICODE int mb_argc = 0; @@ -442,7 +445,7 @@ long wxExecute(wxChar **argv, ARGS_CLEANUP; - return errorRetCode; + return ERROR_RETURN_CODE; } #endif // wxUSE_GUI @@ -470,7 +473,7 @@ long wxExecute(wxChar **argv, ARGS_CLEANUP; - return errorRetCode; + return ERROR_RETURN_CODE; } } @@ -498,7 +501,7 @@ long wxExecute(wxChar **argv, ARGS_CLEANUP; - return errorRetCode; + return ERROR_RETURN_CODE; } else if ( pid == 0 ) // we're in child { @@ -631,6 +634,7 @@ long wxExecute(wxChar **argv, #endif } +#undef ERROR_RETURN_CODE #undef ARGS_CLEANUP // ---------------------------------------------------------------------------- @@ -873,7 +877,7 @@ long wxGetFreeMemory() // env vars // ---------------------------------------------------------------------------- -bool wxGetEnv(const wxString& var, wxString *value); +bool wxGetEnv(const wxString& var, wxString *value) { // wxGetenv is defined as getenv() wxChar *p = wxGetenv(var);