commit dfa21316cdd5fbd07f8f8fd5eb58cddbdcdb03ff
parent 8728ba3951a67b293feeefe29b5ccd757d11c42f
Author: zeertzjq <zeertzjq@outlook.com>
Date: Mon, 25 Sep 2023 05:50:03 +0800
vim-patch:9.0.1934: :bwipe fails after switching window from aucmd_win.
Problem: :bwipe fails after switching window from aucmd_win.
Solution: Decrement b_nwindows after switching back to aucmd_win.
closes: vim/vim#13160
https://github.com/vim/vim/commit/46bdae036ac4121e305fc3ed4ef3f9fc928dcb25
Diffstat:
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/test/old/testdir/test_autocmd.vim b/test/old/testdir/test_autocmd.vim
@@ -3442,11 +3442,22 @@ func Test_closing_autocmd_window()
END
call CheckScriptFailure(lines, 'E814:')
au! BufEnter
- only!
bwipe Xa.txt
bwipe Xb.txt
endfunc
+func Test_switch_window_in_autocmd_window()
+ edit Xa.txt
+ tabnew Xb.txt
+ autocmd BufEnter Xa.txt wincmd w
+ doautoall BufEnter
+ au! BufEnter
+ bwipe Xa.txt
+ call assert_false(bufexists('Xa.txt'))
+ bwipe Xb.txt
+ call assert_false(bufexists('Xb.txt'))
+endfunc
+
func Test_bufwipeout_changes_window()
" This should not crash, but we don't have any expectations about what
" happens, changing window in BufWipeout has unpredictable results.