diff --git a/src/message.c b/src/message.c
index 5f00c01c08fcec6d01d6de3c0103e999236a6c4f..0bbd87fb35094bfd9df38ee2823ca989fe7b49bf 100644
--- a/src/message.c
+++ b/src/message.c
@@ -887,6 +887,8 @@ wait_return(redraw)
     int		oldState;
     int		tmpState;
     int		had_got_int;
+    int		save_Recording;
+    FILE	*save_scriptout;
 
     if (redraw == TRUE)
 	must_redraw = CLEAR;
@@ -957,11 +959,21 @@ wait_return(redraw)
 	     * typeahead buffer. */
 	    ++no_mapping;
 	    ++allow_keys;
+
+	    /* Temporarily disable Recording. If Recording is active, the
+	     * character will be recorded later, since it will be added to the
+	     * typebuf after the loop */
+	    save_Recording = Recording;
+	    save_scriptout = scriptout;
+	    Recording = FALSE;
+	    scriptout = NULL;
 	    c = safe_vgetc();
 	    if (had_got_int && !global_busy)
 		got_int = FALSE;
 	    --no_mapping;
 	    --allow_keys;
+	    Recording = save_Recording;
+	    scriptout = save_scriptout;
 
 #ifdef FEAT_CLIPBOARD
 	    /* Strange way to allow copying (yanking) a modeless selection at
diff --git a/src/version.c b/src/version.c
index 6610be7bb079c02ad05c5343d7e448d0b5cc6f9f..02cca4348ba6c57d3733e1c7741517f7c69a3fbd 100644
--- a/src/version.c
+++ b/src/version.c
@@ -738,6 +738,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    65,
 /**/
     64,
 /**/