changeset 26998:b0ef52086d57 v8.2.4028

patch 8.2.4028: ml_get error with :doautoall and Visual area Commit: https://github.com/vim/vim/commit/cb1956d6f2aece8ad93e19e5d4c7e0b5e405f056 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jan 7 15:45:18 2022 +0000 patch 8.2.4028: ml_get error with :doautoall and Visual area Problem: ml_get error with :doautoall and Visual area. (Sean Dewar) Solution: Disable Visual mode while executing autocommands.
author Bram Moolenaar <Bram@vim.org>
date Fri, 07 Jan 2022 17:00:05 +0100
parents 5ab78ae37723
children aba0728a28d9
files src/autocmd.c src/structs.h src/testdir/test_autocmd.vim src/version.c
diffstat 4 files changed, 12 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/autocmd.c
+++ b/src/autocmd.c
@@ -1424,8 +1424,6 @@ ex_doautoall(exarg_T *eap)
 	if (call_do_modelines && did_aucmd)
 	    do_modelines(0);
     }
-
-    check_cursor();	    // just in case lines got deleted
 }
 
 /*
@@ -1532,6 +1530,10 @@ aucmd_prepbuf(
     curbuf = buf;
     aco->new_curwin_id = curwin->w_id;
     set_bufref(&aco->new_curbuf, curbuf);
+
+    // disable the Visual area, the position may be invalid in another buffer
+    aco->save_VIsual_active = VIsual_active;
+    VIsual_active = FALSE;
 }
 
 /*
@@ -1656,6 +1658,11 @@ win_found:
 	    check_cursor();
 	}
     }
+
+    check_cursor();	    // just in case lines got deleted
+    VIsual_active = aco->save_VIsual_active;
+    if (VIsual_active)
+	check_pos(curbuf, &VIsual);
 }
 
 static int	autocmd_nested = FALSE;
--- a/src/structs.h
+++ b/src/structs.h
@@ -4031,6 +4031,7 @@ typedef struct
     int		save_prevwin_id;    // ID of saved prevwin
     bufref_T	new_curbuf;	    // new curbuf
     char_u	*globaldir;	    // saved value of globaldir
+    int		save_VIsual_active; // saved VIsual_active
 } aco_save_T;
 
 /*
index b6f621dbff12ba215658cb75edf06031e7877e7b..1fc960f537d63aa9554e2671e8c305e2cd90c22d
GIT binary patch
literal 87637
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
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4028,
+/**/
     4027,
 /**/
     4026,