aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog5
-rw-r--r--src/keyboard.c13
2 files changed, 17 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index cb5d3bacba5..8b4029bd7b3 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12011-07-02 Chong Yidong <cyd@stupidchicken.com>
2
3 * keyboard.c (command_loop_1): If a down-mouse event is unbound,
4 leave any prefix arg for the up event (Bug#1586).
5
12011-07-02 Lars Magne Ingebrigtsen <larsi@gnus.org> 62011-07-02 Lars Magne Ingebrigtsen <larsi@gnus.org>
2 7
3 * lread.c (syms_of_lread): Mention single symbols defined by 8 * lread.c (syms_of_lread): Mention single symbols defined by
diff --git a/src/keyboard.c b/src/keyboard.c
index 3441f1dfd12..16300e6154c 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -1539,7 +1539,18 @@ command_loop_1 (void)
1539 message_with_string ("%s is undefined", keys, 0); 1539 message_with_string ("%s is undefined", keys, 0);
1540 KVAR (current_kboard, defining_kbd_macro) = Qnil; 1540 KVAR (current_kboard, defining_kbd_macro) = Qnil;
1541 update_mode_lines = 1; 1541 update_mode_lines = 1;
1542 KVAR (current_kboard, Vprefix_arg) = Qnil; 1542 /* If this is a down-mouse event, don't reset prefix-arg;
1543 pass it to the command run by the up event. */
1544 if (EVENT_HAS_PARAMETERS (last_command_event))
1545 {
1546 Lisp_Object breakdown
1547 = parse_modifiers (EVENT_HEAD (last_command_event));
1548 int modifiers = XINT (XCAR (XCDR (breakdown)));
1549 if (!(modifiers & down_modifier))
1550 KVAR (current_kboard, Vprefix_arg) = Qnil;
1551 }
1552 else
1553 KVAR (current_kboard, Vprefix_arg) = Qnil;
1543 } 1554 }
1544 else 1555 else
1545 { 1556 {