Mercurial > emacs
comparison src/keyboard.c @ 33104:c587b5380fe0
(read_char) <wrong_kboard>: Make sure that we
process idle timers while waiting for another event.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Tue, 31 Oct 2000 16:31:04 +0000 |
parents | a4b7690c68da |
children | 15ff9417493e |
comparison
equal
deleted
inserted
replaced
33103:ecf2e8c385f8 | 33104:c587b5380fe0 |
---|---|
2502 KBOARD *kb; | 2502 KBOARD *kb; |
2503 | 2503 |
2504 /* Actually read a character, waiting if necessary. */ | 2504 /* Actually read a character, waiting if necessary. */ |
2505 save_getcjmp (save_jump); | 2505 save_getcjmp (save_jump); |
2506 restore_getcjmp (local_getcjmp); | 2506 restore_getcjmp (local_getcjmp); |
2507 timer_start_idle (); | |
2507 c = kbd_buffer_get_event (&kb, used_mouse_menu); | 2508 c = kbd_buffer_get_event (&kb, used_mouse_menu); |
2508 restore_getcjmp (save_jump); | 2509 restore_getcjmp (save_jump); |
2509 | 2510 |
2510 #ifdef MULTI_KBOARD | 2511 #ifdef MULTI_KBOARD |
2511 if (! NILP (c) && (kb != current_kboard)) | 2512 if (! NILP (c) && (kb != current_kboard)) |
2548 } | 2549 } |
2549 | 2550 |
2550 non_reread: | 2551 non_reread: |
2551 | 2552 |
2552 timer_stop_idle (); | 2553 timer_stop_idle (); |
2553 | |
2554 start_polling (); | 2554 start_polling (); |
2555 | 2555 |
2556 if (NILP (c)) | 2556 if (NILP (c)) |
2557 { | 2557 { |
2558 if (commandflag >= 0 | 2558 if (commandflag >= 0 |