From: Richard M. Stallman Date: Tue, 21 Dec 2004 11:34:42 +0000 (+0000) Subject: (kbd_buffer_store_event_hold): X-Git-Tag: ttn-vms-21-2-B4~3190 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=85e7f4776aa861a7e1fe994a787987ea923a6936;p=emacs.git (kbd_buffer_store_event_hold): In the code for while-no-input, handle immediate_quit. --- diff --git a/src/keyboard.c b/src/keyboard.c index ffd36acb335..f5ca087227d 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -3711,13 +3711,23 @@ kbd_buffer_store_event_hold (event, hold_quit) ++kbd_store_ptr; } - /* If we're in a section that requested to be interrupted as soon - as input comes, then set quit-flag to cause an interrupt. */ + /* If we're inside while-no-input, and this event qualifies + as input, set quit-flag to cause an interrupt. */ if (!NILP (Vthrow_on_input) && event->kind != FOCUS_IN_EVENT && event->kind != HELP_EVENT && event->kind != DEICONIFY_EVENT) - Vquit_flag = Vthrow_on_input; + { + Vquit_flag = Vthrow_on_input; + /* If we're inside a function that wants immediate quits, + do it now. */ + if (immediate_quit && NILP (Vinhibit_quit)) + { + immediate_quit = 0; + sigfree (); + QUIT; + } + } }