]> granicus.if.org Git - vim/commitdiff
updated for version 7.3.450 v7.3.450
authorBram Moolenaar <Bram@vim.org>
Wed, 22 Feb 2012 14:34:08 +0000 (15:34 +0100)
committerBram Moolenaar <Bram@vim.org>
Wed, 22 Feb 2012 14:34:08 +0000 (15:34 +0100)
Problem:    Win32: Still a problem with "!start /b".
Solution:   Fix pointer use. (Yasuhiro Matsumoto)

src/os_win32.c
src/version.c

index 2f764d3dc98094b1e1ac13cc7105c6b379061b6c..57f004ec24ed7055f903fec562d40e04f4fedbc6 100644 (file)
@@ -4008,21 +4008,23 @@ mch_call_shell(
            if (flags != CREATE_NEW_CONSOLE)
            {
                char_u  *subcmd;
-               char_u  *cmd_shell = default_shell();
+               char_u  *cmd_shell = mch_getenv("COMSPEC");
+
+               if (cmd_shell == NULL || *cmd_shell == NUL)
+                   cmd_shell = default_shell();
 
                subcmd = vim_strsave_escaped_ext(cmdbase, "|", '^', FALSE);
                if (subcmd != NULL)
                {
                    /* make "cmd.exe /c arguments" */
                    cmdlen = STRLEN(cmd_shell) + STRLEN(subcmd) + 5;
-                   vim_free(subcmd);
-
                    newcmd = lalloc(cmdlen, TRUE);
                    if (newcmd != NULL)
                        vim_snprintf((char *)newcmd, cmdlen, "%s /c %s",
-                                                      default_shell, subcmd);
+                                                      cmd_shell, subcmd);
                    else
                        newcmd = cmdbase;
+                   vim_free(subcmd);
                }
            }
 
index f4c76372db5fbe50ac66791e18922d79ba4f1c8e..119ad48764403b68ead7cd85229e4d565a9b1f20 100644 (file)
@@ -714,6 +714,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    450,
 /**/
     449,
 /**/