summaryrefslogtreecommitdiffstats
path: root/commands.c
diff options
context:
space:
mode:
authorKevin McCarthy <kevin@8t8.us>2015-10-04 10:08:49 +0800
committerKevin McCarthy <kevin@8t8.us>2015-10-04 10:08:49 +0800
commit53900afab2a72921e95e33c23a89087f3f73d890 (patch)
treea995d348eb32d98d92f56a26ebf40bcdc1e2c14a /commands.c
parentf358cf9ad832c6b3ede537448da1d4a851275b7d (diff)
Create a separate macro/push/exec event buffer. (closes #3779)
Currently, the SSL and TLS certficate prompts turn on OPTUNBUFFEREDINPUT, (to prevent macros and such from running right through the dialog). Unfortunately, the menu dialog processing in menu_dialog_dokey() is using mutt_ungetch() to forward non-dialog keys on to standard menu processing. With OPTUNBUFFEREDINPUT set, those keys never make it to the menu and are buffered until after the menu dialog. This patch creates a new event buffer, separate from the standard "unget" buffer, for use by macros, exec, and push events. These events can be temporarily ignored by setting OPTIGNOREMACROEVENTS (renamed from OPTUNBUFFEREDINPUT), while continuing to allow unget events to be processed. Since the "push" and "unget" functions now go to different buffers, function names were slightly renamed, to make it less easy to unintentionally use the wrong function at the wrong time.
Diffstat (limited to 'commands.c')
-rw-r--r--commands.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/commands.c b/commands.c
index 5dbd1008..b334c7b6 100644
--- a/commands.c
+++ b/commands.c
@@ -228,7 +228,7 @@ int mutt_display_message (HEADER *cur)
mutt_set_flag (Context, cur, M_READ, 1);
if (r != -1 && option (OPTPROMPTAFTER))
{
- mutt_ungetch (mutt_any_key_to_continue _("Command: "), 0);
+ mutt_unget_event (mutt_any_key_to_continue _("Command: "), 0);
rc = km_dokey (MENU_PAGER);
}
else