From 903ecd7bea7d8f99a7dc84150728219283d79bf0 Mon Sep 17 00:00:00 2001 From: Logan Perkins Date: Wed, 21 Jul 2021 17:56:20 +0200 Subject: [PATCH] Make input of multi-key inputs in different emacsclients more logical * src/keyboard.c (read_key_sequence): Don't continue the input of multi-key commands in one emacsclient in another (bug#39687). --- src/keyboard.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/keyboard.c b/src/keyboard.c index 38118071a80..820229cf8fe 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -9619,17 +9619,23 @@ read_key_sequence (Lisp_Object *keybuf, Lisp_Object prompt, (interrupted_kboard, Fcons (make_lispy_switch_frame (frame), KVAR (interrupted_kboard, kbd_queue))); + mock_input = 0; + } + else + { + if (FIXNUMP (key) && XFIXNUM (key) != -2) + { + /* If interrupted while initializing terminal, we + need to replay the interrupting key. See + Bug#5095 and Bug#37782. */ + mock_input = 1; + keybuf[0] = key; + } + else + { + mock_input = 0; + } } - if (FIXNUMP (key) && XFIXNUM (key) != -2) - { - /* If interrupted while initializing terminal, we - need to replay the interrupting key. See - Bug#5095 and Bug#37782. */ - mock_input = 1; - keybuf[0] = key; - } - else - mock_input = 0; goto replay_entire_sequence; } } -- 2.39.2