summaryrefslogtreecommitdiff
path: root/src/keyboard.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/keyboard.c')
-rw-r--r--src/keyboard.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index 2729ae878a9..e3a77653ed6 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -1418,7 +1418,7 @@ command_loop_1 ()
Lisp_Object keybuf[30];
int i;
int no_direct;
- int prev_modiff;
+ int prev_modiff = 0;
struct buffer *prev_buffer = NULL;
#ifdef MULTI_KBOARD
int was_locked = single_kboard;
@@ -9478,6 +9478,7 @@ read_key_sequence (keybuf, bufsize, prompt, dont_downcase_last,
/* Don't downcase the last character if the caller says don't.
Don't downcase it if the result is undefined, either. */
if ((dont_downcase_last || first_binding >= nmaps)
+ && t > 0
&& t - 1 == original_uppercase_position)
keybuf[t - 1] = original_uppercase;