Mercurial > vim
changeset 5430:7f341db39d5b v7.4.065
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)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Mon, 04 Nov 2013 02:01:01 +0100 |
parents | e14d013611e7 |
children | d37ac023fc64 |
files | src/message.c src/version.c |
diffstat | 2 files changed, 14 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- 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