diff --git a/src/gui/curses/gui-curses-key.c b/src/gui/curses/gui-curses-key.c index 8eea1bb7f..7a62922dd 100644 --- a/src/gui/curses/gui-curses-key.c +++ b/src/gui/curses/gui-curses-key.c @@ -396,7 +396,8 @@ gui_key_flush (int paste) * or if the mouse code is valid UTF-8 (do not send partial mouse * code which is not UTF-8 valid) */ - if (!paste && i > gui_key_last_key_pressed_sent + if (!paste + && (i > gui_key_last_key_pressed_sent) && (!gui_mouse_event_pending || utf8_is_valid (key_str, -1, NULL))) { diff --git a/src/gui/gui-key.c b/src/gui/gui-key.c index 7212e10bc..1744f21d9 100644 --- a/src/gui/gui-key.c +++ b/src/gui/gui-key.c @@ -2390,9 +2390,7 @@ gui_key_pressed (const char *key_str) rc_expand = gui_key_expand (gui_key_combo, &key_name, &key_name_alias); if (!rc_expand) - { goto end_no_input; - } ptr_key = NULL; exact_match = 0;