diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/keyboard.c | 5 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index d14ef05a1ff..f52cf8fee63 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2010-01-12 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * keyboard.c (read_char): Return after executing from special map. | ||
| 4 | |||
| 1 | 2010-01-12 Glenn Morris <rgm@gnu.org> | 5 | 2010-01-12 Glenn Morris <rgm@gnu.org> |
| 2 | 6 | ||
| 3 | * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to | 7 | * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to |
diff --git a/src/keyboard.c b/src/keyboard.c index 13d13cd3276..8bd8cf30468 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -3178,7 +3178,10 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu, end_time) | |||
| 3178 | unbind_to (count, Qnil); | 3178 | unbind_to (count, Qnil); |
| 3179 | #endif | 3179 | #endif |
| 3180 | 3180 | ||
| 3181 | goto retry; | 3181 | /* The command may have changed the keymaps. Pretend there is input |
| 3182 | in another keyboard and return. This will recalculate keymaps. */ | ||
| 3183 | c = make_number (-2); | ||
| 3184 | goto exit; | ||
| 3182 | } | 3185 | } |
| 3183 | 3186 | ||
| 3184 | /* Handle things that only apply to characters. */ | 3187 | /* Handle things that only apply to characters. */ |