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 d025368..d6712c1 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -4214,6 +4214,7 @@
 	// 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 6202993..4f16941 100644
--- a/src/testdir/test_arglist.vim
+++ b/src/testdir/test_arglist.vim
@@ -563,12 +563,18 @@
 " 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\<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
 endfunc
 
diff --git a/src/version.c b/src/version.c
index 24a1d7f..17ca271 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2416,
+/**/
     2415,
 /**/
     2414,