[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs-24 r117260: * src/keyboard.c (read_key_sequence): Do
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] emacs-24 r117260: * src/keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command |
Date: |
Thu, 19 Jun 2014 03:48:26 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 117260
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=17659
committer: Stefan Monnier <address@hidden>
branch nick: emacs-24
timestamp: Wed 2014-06-18 23:48:18 -0400
message:
* src/keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command
before checking key-translation-map.
modified:
src/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1438
src/keyboard.c keyboard.c-20091113204419-o5vbwnq5f7feedwu-449
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2014-06-19 03:21:07 +0000
+++ b/src/ChangeLog 2014-06-19 03:48:18 +0000
@@ -1,3 +1,8 @@
+2014-06-19 Stefan Monnier <address@hidden>
+
+ * keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command
+ before checking key-translation-map (bug#17659).
+
2014-06-19 Dmitry Antipov <address@hidden>
* font.c (font_make_object): Avoid dangling pointer which may
=== modified file 'src/keyboard.c'
--- a/src/keyboard.c 2014-05-06 16:16:57 +0000
+++ b/src/keyboard.c 2014-06-19 03:48:18 +0000
@@ -2197,7 +2197,7 @@
-/* Input of single characters from keyboard */
+/* Input of single characters from keyboard. */
static Lisp_Object kbd_buffer_get_event (KBOARD **kbp, bool *used_mouse_menu,
struct timespec *end_time);
@@ -3656,7 +3656,8 @@
*kbd_store_ptr = *event;
++kbd_store_ptr;
#ifdef subprocesses
- if (kbd_buffer_nr_stored () > KBD_BUFFER_SIZE/2 && ! kbd_on_hold_p ())
+ if (kbd_buffer_nr_stored () > KBD_BUFFER_SIZE / 2
+ && ! kbd_on_hold_p ())
{
/* Don't read keyboard input until we have processed kbd_buffer.
This happens when pasting text longer than KBD_BUFFER_SIZE/2. */
@@ -9384,16 +9385,6 @@
first_unbound = min (t, first_unbound);
head = EVENT_HEAD (key);
- if (help_char_p (head) && t > 0)
- {
- read_key_sequence_cmd = Vprefix_help_command;
- keybuf[t++] = key;
- last_nonmenu_event = key;
- /* The Microsoft C compiler can't handle the goto that
- would go here. */
- dummyflag = 1;
- break;
- }
if (SYMBOLP (head))
{
@@ -9651,6 +9642,17 @@
goto replay_sequence;
}
+
+ if (NILP (current_binding)
+ && help_char_p (EVENT_HEAD (key)) && t > 1)
+ {
+ read_key_sequence_cmd = Vprefix_help_command;
+ /* The Microsoft C compiler can't handle the goto that
+ would go here. */
+ dummyflag = 1;
+ break;
+ }
+
/* If KEY is not defined in any of the keymaps,
and cannot be part of a function key or translation,
and is a shifted function key,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] emacs-24 r117260: * src/keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command,
Stefan Monnier <=