diff --git a/src/evalfunc.c b/src/evalfunc.c
index f44207d..c731280 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -3932,6 +3932,7 @@
     char_u	nbuf[NUMBUFLEN];
     int		typed = FALSE;
     int		execute = FALSE;
+    int		context = FALSE;
     int		dangerous = FALSE;
     int		lowlevel = FALSE;
     char_u	*keys_esc;
@@ -3961,6 +3962,7 @@
 		case 't': typed = TRUE; break;
 		case 'i': insert = TRUE; break;
 		case 'x': execute = TRUE; break;
+		case 'c': context = TRUE; break;
 		case '!': dangerous = TRUE; break;
 		case 'L': lowlevel = TRUE; break;
 	    }
@@ -4007,11 +4009,19 @@
 
 	    if (execute)
 	    {
-		int save_msg_scroll = msg_scroll;
+		int	save_msg_scroll = msg_scroll;
+		sctx_T	save_sctx;
 
 		// Avoid a 1 second delay when the keys start Insert mode.
 		msg_scroll = FALSE;
 
+		if (context)
+		{
+		    save_sctx = current_sctx;
+		    current_sctx.sc_sid = 0;
+		    current_sctx.sc_version = 0;
+		}
+
 		if (!dangerous)
 		{
 		    ++ex_normal_busy;
@@ -4025,6 +4035,9 @@
 		}
 
 		msg_scroll |= save_msg_scroll;
+
+		if (context)
+		    current_sctx = save_sctx;
 	    }
 	}
     }
diff --git a/src/getchar.c b/src/getchar.c
index ec9cfae..ff71952 100644
--- a/src/getchar.c
+++ b/src/getchar.c
@@ -3797,7 +3797,7 @@
 	    }
 	}
 	else
-	    ga_append(&line_ga, (char)c1);
+	    ga_append(&line_ga, c1);
 
 	cmod = 0;
     }
@@ -3815,7 +3815,7 @@
 {
     int	    res;
 #ifdef FEAT_EVAL
-    sctx_T  save_current_sctx = {0, 0, 0, 0};
+    sctx_T  save_current_sctx = {-1, 0, 0, 0};
 
     if (key == K_SCRIPT_COMMAND && last_used_map != NULL)
     {
@@ -3827,7 +3827,7 @@
     res = do_cmdline(NULL, getcmdkeycmd, NULL, flags);
 
 #ifdef FEAT_EVAL
-    if (save_current_sctx.sc_sid > 0)
+    if (save_current_sctx.sc_sid >= 0)
 	current_sctx = save_current_sctx;
 #endif
 
diff --git a/src/testdir/test_mapping.vim b/src/testdir/test_mapping.vim
index 2e9c3e8..2d878d2 100644
--- a/src/testdir/test_mapping.vim
+++ b/src/testdir/test_mapping.vim
@@ -4,6 +4,7 @@
 source check.vim
 source screendump.vim
 source term_util.vim
+source vim9.vim
 
 func Test_abbreviation()
   " abbreviation with 0x80 should work
@@ -1397,6 +1398,19 @@
   ounmap i-
 endfunc
 
+func Test_map_script_cmd_restore()
+  let lines =<< trim END
+      vim9script
+      nnoremap <F3> <ScriptCmd>eval 1 + 2<CR>
+  END
+  call CheckScriptSuccess(lines)
+  call feedkeys("\<F3>:let g:result = 3+4\<CR>", 'xtc')
+  call assert_equal(7, g:result)
+
+  nunmap <F3>
+  unlet g:result
+endfunc
+
 " Test for using <script> with a map to remap characters in rhs
 func Test_script_local_remap()
   new
diff --git a/src/version.c b/src/version.c
index 2e8e9f3..ec96b86 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4107,
+/**/
     4106,
 /**/
     4105,
