diff options
Diffstat (limited to 'src/keyboard.c')
| -rw-r--r-- | src/keyboard.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index 4ace767484e..9faa3770cf3 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -3903,7 +3903,18 @@ kbd_buffer_get_event (KBOARD **kbp, | |||
| 3903 | } | 3903 | } |
| 3904 | } | 3904 | } |
| 3905 | else | 3905 | else |
| 3906 | wait_reading_process_output (0, 0, -1, 1, Qnil, NULL, 0); | 3906 | { |
| 3907 | bool do_display = true; | ||
| 3908 | struct tty_display_info *tty = CURTTY (); | ||
| 3909 | |||
| 3910 | /* When this TTY is displaying a menu, we must prevent any | ||
| 3911 | redisplay, because we modify the frame's glyph matrix | ||
| 3912 | behind the back of the display engine. */ | ||
| 3913 | if (tty->showing_menu) | ||
| 3914 | do_display = false; | ||
| 3915 | |||
| 3916 | wait_reading_process_output (0, 0, -1, do_display, Qnil, NULL, 0); | ||
| 3917 | } | ||
| 3907 | 3918 | ||
| 3908 | if (!interrupt_input && kbd_fetch_ptr == kbd_store_ptr) | 3919 | if (!interrupt_input && kbd_fetch_ptr == kbd_store_ptr) |
| 3909 | gobble_input (); | 3920 | gobble_input (); |