Mercurial > emacs
changeset 14537:60e0c134c055
(read_char, timer_check): Call any_kboard_state
after calling Fcommand_execute, if was previously in that state.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 10 Feb 1996 08:48:48 +0000 |
parents | 12de7dac154b |
children | a17752d2b0c0 |
files | src/keyboard.c |
diffstat | 1 files changed, 14 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/keyboard.c Sat Feb 10 07:33:29 1996 +0000 +++ b/src/keyboard.c Sat Feb 10 08:48:48 1996 +0000 @@ -2057,8 +2057,15 @@ if (!NILP (tem)) { + int was_locked = single_kboard; + last_input_char = c; Fcommand_execute (tem, Qnil, Fvector (1, &last_input_char)); + + /* Resume allowing input from any kboard, if that was true before. */ + if (!was_locked) + any_kboard_state (); + goto retry; } @@ -2931,11 +2938,18 @@ if (do_it_now) { Lisp_Object tem, event; + int was_locked = single_kboard; + tem = get_keymap_1 (Vspecial_event_map, 0, 0); tem = get_keyelt (access_keymap (tem, Qtimer_event, 0, 0), 1); event = Fcons (Qtimer_event, Fcons (timer, Qnil)); Fcommand_execute (tem, Qnil, Fvector (1, &event)); + + /* Resume allowing input from any kboard, if that was true before. */ + if (!was_locked) + any_kboard_state (); + /* Since we have handled the event, we don't need to tell the caller to wake up and do it. */ }