forked from aniani/vim
patch 8.2.5013: after text formatting cursor may be in an invalid position
Problem: After text formatting the cursor may be in an invalid position. Solution: Correct the cursor position after formatting.
This commit is contained in:
@@ -1291,4 +1291,16 @@ func Test_fo_2()
|
||||
close!
|
||||
endfunc
|
||||
|
||||
" This was leaving the cursor after the end of a line. Complicated way to
|
||||
" have the problem show up with valgrind.
|
||||
func Test_correct_cursor_position()
|
||||
set encoding=iso8859
|
||||
new
|
||||
norm a0000
|
||||
sil! norm gggg0i0gw0gg
|
||||
|
||||
bwipe!
|
||||
set encoding=utf8
|
||||
endfunc
|
||||
|
||||
" vim: shiftwidth=2 sts=2 expandtab
|
||||
|
@@ -870,6 +870,9 @@ op_format(
|
||||
{
|
||||
curwin->w_cursor = saved_cursor;
|
||||
saved_cursor.lnum = 0;
|
||||
|
||||
// formatting may have made the cursor position invalid
|
||||
check_cursor();
|
||||
}
|
||||
|
||||
if (oap->is_VIsual)
|
||||
|
@@ -734,6 +734,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
5013,
|
||||
/**/
|
||||
5012,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user