Mercurial > vim
diff src/testdir/test_autocmd.vim @ 29471:9ada26920941 v9.0.0077
patch 9.0.0077: wrong restored cursor position when switching window in autocmd
Commit: https://github.com/vim/vim/commit/b03950fafa07e8b8d975eeb345ad08b8b62e67ce
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jul 26 13:47:13 2022 +0100
patch 9.0.0077: wrong restored cursor position when switching window in autocmd
Problem: When switching window in autocmd the restored cursor position may
be wrong.
Solution: Do not restore the cursor if it was not set. (closes #10775)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 26 Jul 2022 15:00:05 +0200 |
parents | 87da4bab5aaa |
children | 2a327999c05c |
line wrap: on
line diff
--- a/src/testdir/test_autocmd.vim +++ b/src/testdir/test_autocmd.vim @@ -2317,9 +2317,30 @@ func Test_autocmd_nested_cursor_invalid( au! augroup END set laststatus& + cclose bwipe! endfunc +func Test_autocmd_nested_switch_window() + " run this in a separate Vim so that SafeState works + CheckRunVimInTerminal + + let lines =<< trim END + vim9script + ['()']->writefile('Xautofile') + autocmd VimEnter * ++nested edit Xautofile | split + autocmd BufReadPost * autocmd SafeState * ++once foldclosed('.') + autocmd WinEnter * matchadd('ErrorMsg', 'pat') + END + call writefile(lines, 'Xautoscript') + let buf = RunVimInTerminal('-S Xautoscript', {'rows': 10}) + call VerifyScreenDump(buf, 'Test_autocmd_nested_switch', {}) + + call StopVimInTerminal(buf) + call delete('Xautofile') + call delete('Xautoscript') +endfunc + func Test_autocmd_once() " Without ++once WinNew triggers twice let g:did_split = 0 @@ -2631,7 +2652,6 @@ endfunc func Test_autocmd_SafeState() CheckRunVimInTerminal - let g:test_is_flaky = 1 let lines =<< trim END let g:safe = 0