]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/utilsexc.cpp
added disambiguation for Clear() too
[wxWidgets.git] / src / msw / utilsexc.cpp
index 2247c389d2e433048a976d9c494a2f6f9bbabae6..60dc54d9e1738c628c5f746dd33cd83cfd2b65f9 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        msw/utilsexec.cpp
+// Name:        src/msw/utilsexc.cpp
 // Purpose:     wxExecute implementation for MSW
 // Author:      Julian Smart
 // Modified by:
     #include "wx/app.h"
     #include "wx/intl.h"
     #include "wx/log.h"
+    #if wxUSE_STREAMS
+        #include "wx/stream.h"
+    #endif
+    #include "wx/module.h"
 #endif
 
-#include "wx/stream.h"
 #include "wx/process.h"
 
 #include "wx/apptrait.h"
 
-#include "wx/module.h"
 
 #include "wx/msw/private.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.wx_str(),// application name
                  (wxChar *)
-                 Arguments.c_str(),   // arguments
-                 
+                 arguments.wx_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.wx_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);
 }
-