mirror of
https://github.com/vim/vim.git
synced 2025-09-30 04:44:14 -04:00
patch 8.2.2695: cursor position reset with nested autocommands
Problem: Cursor position reset with nested autocommands. Solution: Only check and reset line numbers for not nested autocommands. (closes #5820)
This commit is contained in:
@@ -2116,14 +2116,16 @@ apply_autocmds_group(
|
||||
ap->last = FALSE;
|
||||
ap->last = TRUE;
|
||||
|
||||
// make sure cursor and topline are valid
|
||||
check_lnums(TRUE);
|
||||
if (nesting == 1)
|
||||
// make sure cursor and topline are valid
|
||||
check_lnums(TRUE);
|
||||
|
||||
do_cmdline(NULL, getnextac, (void *)&patcmd,
|
||||
DOCMD_NOWAIT|DOCMD_VERBOSE|DOCMD_REPEAT);
|
||||
|
||||
// restore cursor and topline, unless they were changed
|
||||
reset_lnums();
|
||||
if (nesting == 1)
|
||||
// restore cursor and topline, unless they were changed
|
||||
reset_lnums();
|
||||
|
||||
#ifdef FEAT_EVAL
|
||||
if (eap != NULL)
|
||||
|
Reference in New Issue
Block a user