Mercurial > emacs
diff src/keyboard.c @ 68262:bd5ef7de54da
(echo_char): Don't omit the space between first two echoed chars.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Thu, 19 Jan 2006 17:39:55 +0000 |
parents | a9cbddeec059 |
children | 3bd95f4f2941 9b150bc96d33 5b7d410e31f9 |
line wrap: on
line diff
--- a/src/keyboard.c Thu Jan 19 17:38:57 2006 +0000 +++ b/src/keyboard.c Thu Jan 19 17:39:55 2006 +0000 @@ -790,6 +790,8 @@ else echo_string = concat2 (echo_string, build_string (" ")); } + else if (STRINGP (echo_string)) + echo_string = concat2 (echo_string, build_string (" ")); current_kboard->echo_string = concat2 (echo_string, make_string (buffer, ptr - buffer)); @@ -820,16 +822,16 @@ /* Do nothing if we have already put a dash at the end. */ if (SCHARS (current_kboard->echo_string) > 1) { - Lisp_Object last_char, prev_char, idx; - - idx = make_number (SCHARS (current_kboard->echo_string) - 2); - prev_char = Faref (current_kboard->echo_string, idx); - - idx = make_number (SCHARS (current_kboard->echo_string) - 1); - last_char = Faref (current_kboard->echo_string, idx); - - if (XINT (last_char) == '-' && XINT (prev_char) != ' ') - return; + Lisp_Object last_char, prev_char, idx; + + idx = make_number (SCHARS (current_kboard->echo_string) - 2); + prev_char = Faref (current_kboard->echo_string, idx); + + idx = make_number (SCHARS (current_kboard->echo_string) - 1); + last_char = Faref (current_kboard->echo_string, idx); + + if (XINT (last_char) == '-' && XINT (prev_char) != ' ') + return; } /* Put a dash at the end of the buffer temporarily,