mirror of
https://github.com/vim/vim.git
synced 2025-09-27 04:14:06 -04:00
patch 8.2.5151: reading beyond the end of the line with lisp indenting
Problem: Reading beyond the end of the line with lisp indenting. Solution: Avoid going over the NUL at the end of the line.
This commit is contained in:
@@ -2076,8 +2076,11 @@ get_lisp_indent(void)
|
|||||||
amount += 2;
|
amount += 2;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
that++;
|
if (*that != NUL)
|
||||||
amount++;
|
{
|
||||||
|
that++;
|
||||||
|
amount++;
|
||||||
|
}
|
||||||
firsttry = amount;
|
firsttry = amount;
|
||||||
|
|
||||||
while (VIM_ISWHITE(*that))
|
while (VIM_ISWHITE(*that))
|
||||||
|
@@ -1,4 +1,5 @@
|
|||||||
" Tests for 'lispwords' settings being global-local
|
" Tests for 'lispwords' settings being global-local.
|
||||||
|
" And other lisp indent stuff.
|
||||||
|
|
||||||
set nocompatible viminfo+=nviminfo
|
set nocompatible viminfo+=nviminfo
|
||||||
|
|
||||||
@@ -85,4 +86,13 @@ func Test_lisp_indent()
|
|||||||
set nolisp
|
set nolisp
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_lisp_indent_works()
|
||||||
|
" This was reading beyond the end of the line
|
||||||
|
new
|
||||||
|
exe "norm a\tü(\<CR>="
|
||||||
|
set lisp
|
||||||
|
norm ==
|
||||||
|
bwipe!
|
||||||
|
endfunc
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
@@ -734,6 +734,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
5151,
|
||||||
/**/
|
/**/
|
||||||
5150,
|
5150,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user