# HG changeset patch # User Bram Moolenaar # Date 1383526861 -3600 # Node ID 7f341db39d5bee0a9259a14a65e19bc9efa65417 # Parent e14d013611e75e5eb9d4a391812095509087f5d6 updated for version 7.4.065 Problem: When recording, the character typed at the hit-enter prompt is recorded twice. (Urtica Dioica) Solution: Avoid recording the character twice. (Christian Brabandt) diff --git a/src/message.c b/src/message.c --- 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 --- a/src/version.c +++ b/src/version.c @@ -739,6 +739,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 65, +/**/ 64, /**/ 63,