From: Bram Moolenaar Date: Wed, 27 Jan 2021 19:34:29 +0000 (+0100) Subject: patch 8.2.2416: may get stuck in command line window state X-Git-Tag: v8.2.2416 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=bed72df3e61a8908ed6324212595118f305dded0;p=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. --- diff --git a/src/ex_getln.c b/src/ex_getln.c index d02536821..d6712c126 100644 --- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -4214,6 +4214,7 @@ open_cmdwin(void) // Some autocommand messed it up? win_close(curwin, TRUE); ga_clear(&winsizes); + cmdwin_type = 0; return Ctrl_C; } diff --git a/src/testdir/test_arglist.vim b/src/testdir/test_arglist.vim index 620299349..4f169416a 100644 --- a/src/testdir/test_arglist.vim +++ b/src/testdir/test_arglist.vim @@ -563,12 +563,18 @@ endfunc " Test for ":all" not working when in the cmdline window func Test_all_not_allowed_from_cmdwin() CheckFeature cmdwin - " TODO: why does this hang on Windows? - CheckNotMSWindows au BufEnter * all next x - call assert_fails(":norm 7q?print\", 'E11:') + " Use try/catch here, somehow assert_fails() doesn't work on MS-Windows + " console. + let caught = 'no' + try + exe ":norm! 7q?apat\" + catch /E11:/ + let caught = 'yes' + endtry + call assert_equal('yes', caught) au! BufEnter endfunc diff --git a/src/version.c b/src/version.c index 24a1d7fd4..17ca2717d 100644 --- a/src/version.c +++ b/src/version.c @@ -750,6 +750,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 2416, /**/ 2415, /**/