[vim] - patchlevel 1295
Karsten Hopp
karsten at fedoraproject.org
Tue Jul 9 11:50:49 UTC 2013
commit 8785d62d93937662443b055659b631980900be55
Author: Karsten Hopp <karsten at redhat.com>
Date: Tue Jul 9 13:50:18 2013 +0200
- patchlevel 1295
7.3.1295 | 358 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 358 insertions(+), 0 deletions(-)
---
diff --git a/7.3.1295 b/7.3.1295
new file mode 100644
index 0000000..a169f89
--- /dev/null
+++ b/7.3.1295
@@ -0,0 +1,358 @@
+To: vim_dev at googlegroups.com
+Subject: Patch 7.3.1295
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.1295
+Problem: glob() and globpath() do not handle escaped special characters
+ properly.
+Solution: Handle escaped characters differently. (Adnan Zafar)
+Files: src/testdir/Makefile, src/testdir/test97.in,
+ src/testdir/test97.ok, src/testdir/Make_amiga.mak,
+ src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
+ src/testdir/Make_os2.mak, src/testdir/Make_vms.mms, src/fileio.c,
+ src/misc1.c
+
+
+*** ../vim-7.3.1294/src/testdir/Makefile 2013-07-01 21:24:40.000000000 +0200
+--- src/testdir/Makefile 2013-07-03 16:20:47.000000000 +0200
+***************
+*** 29,35 ****
+ test79.out test80.out test81.out test82.out test83.out \
+ test84.out test85.out test86.out test87.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out
+
+ SCRIPTS_GUI = test16.out
+
+--- 29,35 ----
+ test79.out test80.out test81.out test82.out test83.out \
+ test84.out test85.out test86.out test87.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out test97.out
+
+ SCRIPTS_GUI = test16.out
+
+*** ../vim-7.3.1294/src/testdir/test97.in 2013-07-03 16:52:09.000000000 +0200
+--- src/testdir/test97.in 2013-07-03 16:24:24.000000000 +0200
+***************
+*** 0 ****
+--- 1,17 ----
++ Test whether glob()/globpath() return correct results with certain escaped
++ characters.
++
++ STARTTEST
++ :so small.vim
++ :set shell=doesnotexist
++ :e test.out
++ :put =glob('Xxx\{')
++ :put =glob('Xxx\$')
++ :w! Xxx{
++ :w! Xxx\$
++ :put =glob('Xxx\{')
++ :put =glob('Xxx\$')
++ :w
++ :qa!
++ ENDTEST
++
+*** ../vim-7.3.1294/src/testdir/test97.ok 2013-07-03 16:52:09.000000000 +0200
+--- src/testdir/test97.ok 2013-07-03 16:14:50.000000000 +0200
+***************
+*** 0 ****
+--- 1,5 ----
++
++
++
++ Xxx{
++ Xxx$
+*** ../vim-7.3.1294/src/testdir/Make_amiga.mak 2013-07-01 21:24:40.000000000 +0200
+--- src/testdir/Make_amiga.mak 2013-07-03 16:21:39.000000000 +0200
+***************
+*** 33,39 ****
+ test76.out test77.out test78.out test79.out test80.out \
+ test81.out test82.out test83.out test84.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out
+
+ .SUFFIXES: .in .out
+
+--- 33,39 ----
+ test76.out test77.out test78.out test79.out test80.out \
+ test81.out test82.out test83.out test84.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out test97.out
+
+ .SUFFIXES: .in .out
+
+***************
+*** 146,148 ****
+--- 146,149 ----
+ test94.out: test94.in
+ test95.out: test95.in
+ test96.out: test96.in
++ test97.out: test97.in
+*** ../vim-7.3.1294/src/testdir/Make_dos.mak 2013-07-01 21:24:40.000000000 +0200
+--- src/testdir/Make_dos.mak 2013-07-03 16:21:46.000000000 +0200
+***************
+*** 32,38 ****
+ test79.out test80.out test81.out test82.out test83.out \
+ test84.out test85.out test86.out test87.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out
+
+ SCRIPTS32 = test50.out test70.out
+
+--- 32,38 ----
+ test79.out test80.out test81.out test82.out test83.out \
+ test84.out test85.out test86.out test87.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out test97.out
+
+ SCRIPTS32 = test50.out test70.out
+
+*** ../vim-7.3.1294/src/testdir/Make_ming.mak 2013-07-01 21:24:40.000000000 +0200
+--- src/testdir/Make_ming.mak 2013-07-03 16:21:49.000000000 +0200
+***************
+*** 52,58 ****
+ test79.out test80.out test81.out test82.out test83.out \
+ test84.out test85.out test86.out test87.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out
+
+ SCRIPTS32 = test50.out test70.out
+
+--- 52,58 ----
+ test79.out test80.out test81.out test82.out test83.out \
+ test84.out test85.out test86.out test87.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out test97.out
+
+ SCRIPTS32 = test50.out test70.out
+
+*** ../vim-7.3.1294/src/testdir/Make_os2.mak 2013-07-01 21:24:40.000000000 +0200
+--- src/testdir/Make_os2.mak 2013-07-03 16:21:51.000000000 +0200
+***************
+*** 33,39 ****
+ test76.out test77.out test78.out test79.out test80.out \
+ test81.out test82.out test83.out test84.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out
+
+ .SUFFIXES: .in .out
+
+--- 33,39 ----
+ test76.out test77.out test78.out test79.out test80.out \
+ test81.out test82.out test83.out test84.out test88.out \
+ test89.out test90.out test91.out test92.out test93.out \
+! test94.out test95.out test96.out test97.out
+
+ .SUFFIXES: .in .out
+
+*** ../vim-7.3.1294/src/testdir/Make_vms.mms 2013-07-01 21:24:40.000000000 +0200
+--- src/testdir/Make_vms.mms 2013-07-03 16:21:54.000000000 +0200
+***************
+*** 4,10 ****
+ # Authors: Zoltan Arpadffy, <arpadffy at polarhome.com>
+ # Sandor Kopanyi, <sandor.kopanyi at mailbox.hu>
+ #
+! # Last change: 2013 Jul 01
+ #
+ # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
+ # Edit the lines in the Configuration section below to select.
+--- 4,10 ----
+ # Authors: Zoltan Arpadffy, <arpadffy at polarhome.com>
+ # Sandor Kopanyi, <sandor.kopanyi at mailbox.hu>
+ #
+! # Last change: 2013 Jul 03
+ #
+ # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
+ # Edit the lines in the Configuration section below to select.
+***************
+*** 78,84 ****
+ test77.out test78.out test79.out test80.out test81.out \
+ test82.out test83.out test84.out test88.out test89.out \
+ test90.out test91.out test92.out test93.out test94.out \
+! test95.out test96.out
+
+ # Known problems:
+ # Test 30: a problem around mac format - unknown reason
+--- 78,84 ----
+ test77.out test78.out test79.out test80.out test81.out \
+ test82.out test83.out test84.out test88.out test89.out \
+ test90.out test91.out test92.out test93.out test94.out \
+! test95.out test96.out test97.out
+
+ # Known problems:
+ # Test 30: a problem around mac format - unknown reason
+*** ../vim-7.3.1294/src/fileio.c 2013-06-26 19:17:58.000000000 +0200
+--- src/fileio.c 2013-07-03 16:27:10.000000000 +0200
+***************
+*** 10301,10307 ****
+ * foo\,bar -> foo,bar
+ * foo\ bar -> foo bar
+ * Don't unescape \, * and others that are also special in a
+! * regexp. */
+ if (*++p == '?'
+ #ifdef BACKSLASH_IN_FILENAME
+ && no_bslash
+--- 10301,10310 ----
+ * foo\,bar -> foo,bar
+ * foo\ bar -> foo bar
+ * Don't unescape \, * and others that are also special in a
+! * regexp.
+! * An escaped { must be unescaped since we use magic not
+! * verymagic.
+! */
+ if (*++p == '?'
+ #ifdef BACKSLASH_IN_FILENAME
+ && no_bslash
+***************
+*** 10309,10315 ****
+ )
+ reg_pat[i++] = '?';
+ else
+! if (*p == ',' || *p == '%' || *p == '#' || *p == ' ')
+ reg_pat[i++] = *p;
+ else
+ {
+--- 10312,10319 ----
+ )
+ reg_pat[i++] = '?';
+ else
+! if (*p == ',' || *p == '%' || *p == '#'
+! || *p == ' ' || *p == '{')
+ reg_pat[i++] = *p;
+ else
+ {
+*** ../vim-7.3.1294/src/misc1.c 2013-06-17 19:26:29.000000000 +0200
+--- src/misc1.c 2013-07-03 16:39:46.000000000 +0200
+***************
+*** 10457,10462 ****
+--- 10457,10510 ----
+ }
+ #endif
+
++ static int has_env_var __ARGS((char_u *p));
++
++ /*
++ * Return TRUE if "p" contains what looks like an environment variable.
++ * Allowing for escaping.
++ */
++ static int
++ has_env_var(p)
++ char_u *p;
++ {
++ for ( ; *p; mb_ptr_adv(p))
++ {
++ if (*p == '\\' && p[1] != NUL)
++ ++p;
++ else if (vim_strchr((char_u *)
++ #if defined(MSDOS) || defined(MSWIN) || defined(OS2)
++ "$%"
++ #else
++ "$"
++ #endif
++ , *p) != NULL)
++ return TRUE;
++ }
++ return FALSE;
++ }
++
++ #ifdef SPECIAL_WILDCHAR
++ static int has_special_wildchar __ARGS((char_u *p));
++
++ /*
++ * Return TRUE if "p" contains a special wildcard character.
++ * Allowing for escaping.
++ */
++ static int
++ has_special_wildchar(p)
++ char_u *p;
++ {
++ for ( ; *p; mb_ptr_adv(p))
++ {
++ if (*p == '\\' && p[1] != NUL)
++ ++p;
++ else if (vim_strchr((char_u *)SPECIAL_WILDCHAR, *p) != NULL)
++ return TRUE;
++ }
++ return FALSE;
++ }
++ #endif
++
+ /*
+ * Generic wildcard expansion code.
+ *
+***************
+*** 10507,10513 ****
+ */
+ for (i = 0; i < num_pat; i++)
+ {
+! if (vim_strpbrk(pat[i], (char_u *)SPECIAL_WILDCHAR) != NULL
+ # ifdef VIM_BACKTICK
+ && !(vim_backtick(pat[i]) && pat[i][1] == '=')
+ # endif
+--- 10555,10561 ----
+ */
+ for (i = 0; i < num_pat; i++)
+ {
+! if (has_special_wildchar(pat[i])
+ # ifdef VIM_BACKTICK
+ && !(vim_backtick(pat[i]) && pat[i][1] == '=')
+ # endif
+***************
+*** 10537,10543 ****
+ /*
+ * First expand environment variables, "~/" and "~user/".
+ */
+! if (vim_strchr(p, '$') != NULL || *p == '~')
+ {
+ p = expand_env_save_opt(p, TRUE);
+ if (p == NULL)
+--- 10585,10591 ----
+ /*
+ * First expand environment variables, "~/" and "~user/".
+ */
+! if (has_env_var(p) || *p == '~')
+ {
+ p = expand_env_save_opt(p, TRUE);
+ if (p == NULL)
+***************
+*** 10548,10554 ****
+ * variable, use the shell to do that. Discard previously
+ * found file names and start all over again.
+ */
+! else if (vim_strchr(p, '$') != NULL || *p == '~')
+ {
+ vim_free(p);
+ ga_clear_strings(&ga);
+--- 10596,10602 ----
+ * variable, use the shell to do that. Discard previously
+ * found file names and start all over again.
+ */
+! else if (has_env_var(p) || *p == '~')
+ {
+ vim_free(p);
+ ga_clear_strings(&ga);
+*** ../vim-7.3.1294/src/version.c 2013-07-03 15:46:59.000000000 +0200
+--- src/version.c 2013-07-03 15:51:54.000000000 +0200
+***************
+*** 730,731 ****
+--- 730,733 ----
+ { /* Add new patch number below this line */
++ /**/
++ 1295,
+ /**/
+
+--
+When I look deep into your eyes, I see JPEG artifacts.
+I can tell by the pixels that we're wrong for each other. (xkcd)
+
+ /// Bram Moolenaar -- Bram at 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 ///
More information about the scm-commits
mailing list