diff options
Diffstat (limited to 'source/ap/vim/patches/7.3.269')
-rw-r--r-- | source/ap/vim/patches/7.3.269 | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/source/ap/vim/patches/7.3.269 b/source/ap/vim/patches/7.3.269 deleted file mode 100644 index a0bfc473..00000000 --- a/source/ap/vim/patches/7.3.269 +++ /dev/null @@ -1,112 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 7.3.269 -Fcc: outbox -From: Bram Moolenaar <Bram@moolenaar.net> -Mime-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit ------------- - -Patch 7.3.269 -Problem: 'shellcmdflag' only works with one flag. -Solution: Split into multiple arguments. (Gary Johnson) -Files: src/os_unix.c - - -*** ../vim-7.3.268/src/os_unix.c 2011-08-04 19:36:47.000000000 +0200 ---- src/os_unix.c 2011-08-04 20:27:13.000000000 +0200 -*************** -*** 3795,3802 **** ---- 3795,3804 ---- - int retval = -1; - char **argv = NULL; - int argc; -+ char_u *p_shcf_copy = NULL; - int i; - char_u *p; -+ char_u *s; - int inquote; - int pty_master_fd = -1; /* for pty's */ - # ifdef FEAT_GUI -*************** -*** 3855,3860 **** ---- 3857,3875 ---- - } - if (argv == NULL) - { -+ /* -+ * Account for possible multiple args in p_shcf. -+ */ -+ p = p_shcf; -+ for (;;) -+ { -+ p = skiptowhite(p); -+ if (*p == NUL) -+ break; -+ ++argc; -+ p = skipwhite(p); -+ } -+ - argv = (char **)alloc((unsigned)((argc + 4) * sizeof(char *))); - if (argv == NULL) /* out of memory */ - goto error; -*************** -*** 3864,3870 **** - { - if (extra_shell_arg != NULL) - argv[argc++] = (char *)extra_shell_arg; -! argv[argc++] = (char *)p_shcf; - argv[argc++] = (char *)cmd; - } - argv[argc] = NULL; ---- 3879,3901 ---- - { - if (extra_shell_arg != NULL) - argv[argc++] = (char *)extra_shell_arg; -! -! /* Break 'shellcmdflag' into white separated parts. This doesn't -! * handle quoted strings, they are very unlikely to appear. */ -! p_shcf_copy = alloc((unsigned)STRLEN(p_shcf) + 1); -! if (p_shcf_copy == NULL) /* out of memory */ -! goto error; -! s = p_shcf_copy; -! p = p_shcf; -! while (*p != NUL) -! { -! argv[argc++] = (char *)s; -! while (*p && *p != ' ' && *p != TAB) -! *s++ = *p++; -! *s++ = NUL; -! p = skipwhite(p); -! } -! - argv[argc++] = (char *)cmd; - } - argv[argc] = NULL; -*************** -*** 4677,4682 **** ---- 4708,4714 ---- - } - } - vim_free(argv); -+ vim_free(p_shcf_copy); - - error: - if (!did_settmode) -*** ../vim-7.3.268/src/version.c 2011-08-04 19:36:47.000000000 +0200 ---- src/version.c 2011-08-04 20:30:44.000000000 +0200 -*************** -*** 711,712 **** ---- 711,714 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 269, - /**/ - --- -Be nice to your kids... they'll be the ones choosing your nursing home. - - /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ -/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ -\\\ an exciting new programming language -- http://www.Zimbu.org /// - \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |