summaryrefslogtreecommitdiff
path: root/src/keyboard.c
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2013-10-29 17:05:35 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2013-10-29 17:05:35 -0400
commit4c9797cb77cee0d72084567ed8a7e97fcf41abff (patch)
tree265ecd2bdf1b46c832f48c3a7a4ffe1378c20ffd /src/keyboard.c
parentdcd163ac993757af6afa129b8625e3ea1c43973a (diff)
downloademacs-4c9797cb77cee0d72084567ed8a7e97fcf41abff.tar.gz
* src/keyboard.c (command_loop_1): If command is nil, call `undefined'.
* lisp/subr.el (undefined): Add missing behavior from the C code for unbound keys.
Diffstat (limited to 'src/keyboard.c')
-rw-r--r--src/keyboard.c23
1 files changed, 2 insertions, 21 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index 0ff4cda034a..6831f4d2cad 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -1510,27 +1510,8 @@ command_loop_1 (void)
already_adjusted = 0;
if (NILP (Vthis_command))
- {
- /* nil means key is undefined. */
- Lisp_Object keys = Fvector (i, keybuf);
- keys = Fkey_description (keys, Qnil);
- bitch_at_user ();
- message_with_string ("%s is undefined", keys, 0);
- kset_defining_kbd_macro (current_kboard, Qnil);
- update_mode_lines = 1;
- /* If this is a down-mouse event, don't reset prefix-arg;
- pass it to the command run by the up event. */
- if (EVENT_HAS_PARAMETERS (last_command_event))
- {
- Lisp_Object breakdown
- = parse_modifiers (EVENT_HEAD (last_command_event));
- int modifiers = XINT (XCAR (XCDR (breakdown)));
- if (!(modifiers & down_modifier))
- kset_prefix_arg (current_kboard, Qnil);
- }
- else
- kset_prefix_arg (current_kboard, Qnil);
- }
+ /* nil means key is undefined. */
+ call0 (Qundefined);
else
{
/* Here for a command that isn't executed directly. */