1
0
forked from aniani/vim

patch 8.2.2416: may get stuck in command line window state

Problem:    May get stuck in command line window state.
Solution:   Reset "cmdwin_type" when editing buffer fails.  Make arglist test
            pass on MS-Windows.
This commit is contained in:
Bram Moolenaar
2021-01-27 20:34:29 +01:00
parent 21829c5f2c
commit bed72df3e6
3 changed files with 12 additions and 3 deletions

View File

@@ -4214,6 +4214,7 @@ open_cmdwin(void)
// Some autocommand messed it up? // Some autocommand messed it up?
win_close(curwin, TRUE); win_close(curwin, TRUE);
ga_clear(&winsizes); ga_clear(&winsizes);
cmdwin_type = 0;
return Ctrl_C; return Ctrl_C;
} }

View File

@@ -563,12 +563,18 @@ endfunc
" Test for ":all" not working when in the cmdline window " Test for ":all" not working when in the cmdline window
func Test_all_not_allowed_from_cmdwin() func Test_all_not_allowed_from_cmdwin()
CheckFeature cmdwin CheckFeature cmdwin
" TODO: why does this hang on Windows?
CheckNotMSWindows
au BufEnter * all au BufEnter * all
next x next x
call assert_fails(":norm 7q?print\<CR>", 'E11:') " Use try/catch here, somehow assert_fails() doesn't work on MS-Windows
" console.
let caught = 'no'
try
exe ":norm! 7q?apat\<CR>"
catch /E11:/
let caught = 'yes'
endtry
call assert_equal('yes', caught)
au! BufEnter au! BufEnter
endfunc endfunc

View File

@@ -750,6 +750,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
2416,
/**/ /**/
2415, 2415,
/**/ /**/