Patch 8.2.1910
Problem: Reading past the end of the command line.
Solution: Check for NUL. (closes #7204)
Files: src/ex_docmd.c, src/testdir/test_edit.vim
*** ../vim-8.2.1909/src/ex_docmd.c 2020-10-24 20:49:37.494683051 +0200
--- src/ex_docmd.c 2020-10-26 21:37:35.104048205 +0100
***************
*** 2958,2965 ****
cmod->cmod_save_ei = NULL;
}
! if (cmod->cmod_filter_regmatch.regprog != NULL)
! vim_regfree(cmod->cmod_filter_regmatch.regprog);
if (cmod->cmod_save_msg_silent > 0)
{
--- 2958,2964 ----
cmod->cmod_save_ei = NULL;
}
! vim_regfree(cmod->cmod_filter_regmatch.regprog);
if (cmod->cmod_save_msg_silent > 0)
{
***************
*** 4696,4701 ****
--- 4695,4702 ----
{
p += 2;
(void)skip_expr(&p, NULL);
+ if (*p == NUL) // stop at NUL after CTRL-V
+ break;
}
#endif
*** ../vim-8.2.1909/src/testdir/test_edit.vim 2020-10-21 12:19:50.080854732 +0200
--- src/testdir/test_edit.vim 2020-10-26 21:19:31.479465757 +0100
***************
*** 1832,1835 ****
--- 1832,1842 ----
bwipe!
endfunc
+ func Test_read_invalid()
+ set encoding=latin1
+ " This was not properly checking for going past the end.
+ call assert_fails('r`=', 'E484')
+ set encoding=utf-8
+ endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
*** ../vim-8.2.1909/src/version.c 2020-10-26 21:05:23.905469139 +0100
--- src/version.c 2020-10-26 21:38:53.591737578 +0100
***************
*** 752,753 ****
--- 752,755 ----
{ /* Add new patch number below this line */
+ /**/
+ 1910,
/**/
--
hundred-and-one symptoms of being an internet addict:
133. You communicate with people on other continents more than you
do with your own neighbors.
/// Bram Moolenaar -- Br...@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 ///