diff options
Diffstat (limited to 'data/vim/patches/8.1.0479')
-rw-r--r-- | data/vim/patches/8.1.0479 | 188 |
1 files changed, 188 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.0479 b/data/vim/patches/8.1.0479 new file mode 100644 index 000000000..84cfe5f20 --- /dev/null +++ b/data/vim/patches/8.1.0479 @@ -0,0 +1,188 @@ +To: vim_dev@googlegroups.com +Subject: Patch 8.1.0479 +Fcc: outbox +From: Bram Moolenaar <Bram@moolenaar.net> +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 8.1.0479 +Problem: Failure when setting 'varsofttabstop' to end in a comma. (Ralf + Schandl) +Solution: Reject value with trailing command. Add test for invalid values + (closes #3544) +Files: src/testdir/test_vartabs.vim, src/option.c + + +*** ../vim-8.1.0478/src/testdir/test_vartabs.vim 2018-06-28 22:22:56.233315600 +0200 +--- src/testdir/test_vartabs.vim 2018-10-15 22:50:55.841034425 +0200 +*************** +*** 5,15 **** + endif + + source view_util.vim +! function! s:compare_lines(expect, actual) + call assert_equal(join(a:expect, "\n"), join(a:actual, "\n")) +! endfunction + +! func! Test_vartabs() + new + %d + +--- 5,15 ---- + endif + + source view_util.vim +! func s:compare_lines(expect, actual) + call assert_equal(join(a:expect, "\n"), join(a:actual, "\n")) +! endfunc + +! func Test_vartabs() + new + %d + +*************** +*** 261,267 **** + bwipeout! + endfunc + +! func! Test_vartabs_linebreak() + if winwidth(0) < 40 + return + endif +--- 261,267 ---- + bwipeout! + endfunc + +! func Test_vartabs_linebreak() + if winwidth(0) < 40 + return + endif +*************** +*** 296,298 **** +--- 296,309 ---- + bw! + set nolist listchars&vim + endfunc ++ ++ func Test_vartabs_failures() ++ call assert_fails('set vts=8,') ++ call assert_fails('set vsts=8,') ++ call assert_fails('set vts=8,,8') ++ call assert_fails('set vsts=8,,8') ++ call assert_fails('set vts=8,,8,') ++ call assert_fails('set vsts=8,,8,') ++ call assert_fails('set vts=,8') ++ call assert_fails('set vsts=,8') ++ endfunc +*** ../vim-8.1.0478/src/option.c 2018-10-02 14:45:07.023652468 +0200 +--- src/option.c 2018-10-15 22:49:58.049552333 +0200 +*************** +*** 12786,12802 **** + int t; + char_u *cp; + +! if ((!var[0] || (var[0] == '0' && !var[1]))) + { + *array = NULL; + return TRUE; + } + +! for (cp = var; *cp; ++cp) + { +! if (cp == var || *(cp - 1) == ',') + { + char_u *end; + if (strtol((char *)cp, (char **)&end, 10) <= 0) + { + if (cp != end) +--- 12786,12803 ---- + int t; + char_u *cp; + +! if (var[0] == NUL || (var[0] == '0' && var[1] == NUL)) + { + *array = NULL; + return TRUE; + } + +! for (cp = var; *cp != NUL; ++cp) + { +! if (cp == var || cp[-1] == ',') + { + char_u *end; ++ + if (strtol((char *)cp, (char **)&end, 10) <= 0) + { + if (cp != end) +*************** +*** 12809,12815 **** + + if (VIM_ISDIGIT(*cp)) + continue; +! if (*cp == ',' && cp > var && *(cp - 1) != ',') + { + ++valcount; + continue; +--- 12810,12816 ---- + + if (VIM_ISDIGIT(*cp)) + continue; +! if (cp[0] == ',' && cp > var && cp[-1] != ',' && cp[1] != NUL) + { + ++valcount; + continue; +*************** +*** 12818,12833 **** + return FALSE; + } + +! *array = (int *) alloc((unsigned) ((valcount + 1) * sizeof(int))); + (*array)[0] = valcount; + + t = 1; +! for (cp = var; *cp;) + { + (*array)[t++] = atoi((char *)cp); +! while (*cp && *cp != ',') + ++cp; +! if (*cp) + ++cp; + } + +--- 12819,12834 ---- + return FALSE; + } + +! *array = (int *)alloc((unsigned) ((valcount + 1) * sizeof(int))); + (*array)[0] = valcount; + + t = 1; +! for (cp = var; *cp != NUL;) + { + (*array)[t++] = atoi((char *)cp); +! while (*cp != NUL && *cp != ',') + ++cp; +! if (*cp != NUL) + ++cp; + } + +*** ../vim-8.1.0478/src/version.c 2018-10-15 20:11:14.472652214 +0200 +--- src/version.c 2018-10-15 22:51:35.136682428 +0200 +*************** +*** 794,795 **** +--- 794,797 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 479, + /**/ + +-- +hundred-and-one symptoms of being an internet addict: +214. Your MCI "Circle of Friends" are all Hayes-compatible. + + /// 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 /// |