X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/78c743d864c0fbb303f18b0380174d66c63531bc..24e35cf87b9350d0d114fa8db0e2f5bef6410139:/src/msw/utilsexc.cpp diff --git a/src/msw/utilsexc.cpp b/src/msw/utilsexc.cpp index 2247c389d2..8df728921e 100644 --- a/src/msw/utilsexc.cpp +++ b/src/msw/utilsexc.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: msw/utilsexec.cpp +// Name: src/msw/utilsexc.cpp // Purpose: wxExecute implementation for MSW // Author: Julian Smart // Modified by: @@ -29,9 +29,11 @@ #include "wx/app.h" #include "wx/intl.h" #include "wx/log.h" + #if wxUSE_STREAMS + #include "wx/stream.h" + #endif #endif -#include "wx/stream.h" #include "wx/process.h" #include "wx/apptrait.h" @@ -710,41 +712,33 @@ long wxExecute(const wxString& cmd, int flags, wxProcess *handler) #ifndef __WXWINCE__ dwFlags |= CREATE_DEFAULT_ERROR_MODE ; #else - wxString ModuleName; - wxString Arguments; - { int idx = command.Find( wxT(' ') ); - if( idx >= 0 ) { - ModuleName = command.Left(idx); - Arguments = command.Mid(idx+1); - } else { - ModuleName = command; - } - } + // we are assuming commands without spaces for now + wxString moduleName = command.BeforeFirst(wxT(' ')); + wxString arguments = command.AfterFirst(wxT(' ')); #endif bool ok = ::CreateProcess ( - // WinCE requires appname to be non null + // WinCE requires appname to be non null // Win32 allows for null #ifdef __WXWINCE__ (wxChar *) - ModuleName.c_str(), // application name + moduleName.c_str(), // application name (wxChar *) - Arguments.c_str(), // arguments - + arguments.c_str(), // arguments #else - NULL, // application name (use only cmd line) + NULL, // application name (use only cmd line) (wxChar *) - command.c_str(), // full command line + command.c_str(), // full command line #endif - NULL, // security attributes: defaults for both - NULL, // the process and its main thread - redirect, // inherit handles if we use pipes - dwFlags, // process creation flags - NULL, // environment (use the same) - NULL, // current directory (use the same) - &si, // startup info (unused here) - &pi // process info + NULL, // security attributes: defaults for both + NULL, // the process and its main thread + redirect, // inherit handles if we use pipes + dwFlags, // process creation flags + NULL, // environment (use the same) + NULL, // current directory (use the same) + &si, // startup info (unused here) + &pi // process info ) != 0; #if wxUSE_STREAMS && !defined(__WXWINCE__) @@ -960,4 +954,3 @@ long wxExecute(wxChar **argv, int flags, wxProcess *handler) return wxExecute(command, flags, handler); } -