Author: lupus
Date: 2006-12-07 09:22:10 -0500 (Thu, 07 Dec 2006)
New Revision: 69179

Modified:
   trunk/mono/mono/metadata/ChangeLog
   trunk/mono/mono/metadata/process.c
Log:


Thu Dec 7 15:20:31 CET 2006 Paolo Molaro <[EMAIL PROTECTED]>

        * process.c: ProcessStartInfo may have only filename set and
        arguments can be NULL.



Modified: trunk/mono/mono/metadata/ChangeLog
===================================================================
--- trunk/mono/mono/metadata/ChangeLog  2006-12-07 12:15:11 UTC (rev 69178)
+++ trunk/mono/mono/metadata/ChangeLog  2006-12-07 14:22:10 UTC (rev 69179)
@@ -1,4 +1,9 @@
 
+Thu Dec 7 15:20:31 CET 2006 Paolo Molaro <[EMAIL PROTECTED]>
+
+       * process.c: ProcessStartInfo may have only filename set and
+       arguments can be NULL.
+
 Tue Dec 5 19:19:34 CET 2006 Paolo Molaro <[EMAIL PROTECTED]>
 
        * icall.c: fix leak found by Robert Jordan.

Modified: trunk/mono/mono/metadata/process.c
===================================================================
--- trunk/mono/mono/metadata/process.c  2006-12-07 12:15:11 UTC (rev 69178)
+++ trunk/mono/mono/metadata/process.c  2006-12-07 14:22:10 UTC (rev 69179)
@@ -784,8 +784,6 @@
        gchar *spath = NULL;
        MonoString *cmd = proc_start_info->arguments;
        
-       MONO_ARCH_SAVE_REGS;
-
        startinfo.cb=sizeof(STARTUPINFO);
        startinfo.dwFlags=STARTF_USESTDHANDLES;
        startinfo.hStdInput=stdin_handle;
@@ -801,6 +799,7 @@
 #ifdef PLATFORM_WIN32
        /* Seems like our CreateProcess does not work as the windows one.
         * This hack is needed to deal with paths containing spaces */
+       /* FIXME: handle a NULL cms, since filename is the only value that must 
be set */
        shell_path = NULL;
        free_shell_path = FALSE;
        tmp = mono_string_to_utf8 (cmd);
@@ -863,7 +862,7 @@
                dir=mono_string_chars (proc_start_info->working_directory);
        }
        
-       ret=CreateProcess (shell_path, mono_string_chars (cmd), NULL, NULL, 
TRUE, CREATE_UNICODE_ENVIRONMENT, env_vars, dir, &startinfo, &procinfo);
+       ret=CreateProcess (shell_path, cmd? mono_string_chars (cmd): NULL, 
NULL, NULL, TRUE, CREATE_UNICODE_ENVIRONMENT, env_vars, dir, &startinfo, 
&procinfo);
 
        g_free (env_vars);
        if (free_shell_path)

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to