summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2015-05-08 12:11:05 +0300
committerEli Zaretskii <eliz@gnu.org>2015-05-08 12:11:05 +0300
commit0d0a4d06efff115f35b4813fa7d2d68b2c600297 (patch)
tree32793f06430bda5ece59ab1742899c883c4e279c
parent1bb36c5cd49978fbc2403c4f170b14f01c6f0886 (diff)
downloademacs-0d0a4d06efff115f35b4813fa7d2d68b2c600297.tar.gz
Fix keyboard macros that include function keys
* src/keyboard.c (read_char_minibuf_menu_prompt): Record function keys in the macro before returning. (Bug#20454)
-rw-r--r--src/keyboard.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index c2739df10fa..77f7fb97898 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -8707,12 +8707,10 @@ read_char_minibuf_menu_prompt (int commandflag,
while (BUFFERP (obj));
kset_defining_kbd_macro (current_kboard, orig_defn_macro);
- if (!INTEGERP (obj) || XINT (obj) == -2)
- return obj;
-
- if (! EQ (obj, menu_prompt_more_char)
- && (!INTEGERP (menu_prompt_more_char)
- || ! EQ (obj, make_number (Ctl (XINT (menu_prompt_more_char))))))
+ if (!INTEGERP (obj) || XINT (obj) == -2
+ || (! EQ (obj, menu_prompt_more_char)
+ && (!INTEGERP (menu_prompt_more_char)
+ || ! EQ (obj, make_number (Ctl (XINT (menu_prompt_more_char)))))))
{
if (!NILP (KVAR (current_kboard, defining_kbd_macro)))
store_kbd_macro_char (obj);