diff --git a/src/keyboard.c b/src/keyboard.c index c9fa2a9f5e1..55486c6d9ab 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -634,7 +634,8 @@ echo_length (void) static void echo_truncate (ptrdiff_t nchars) { - if (STRINGP (KVAR (current_kboard, echo_string))) + Lisp_Object es = KVAR (current_kboard, echo_string); + if (STRINGP (es) && SCHARS (es) > nchars) kset_echo_string (current_kboard, Fsubstring (KVAR (current_kboard, echo_string), make_number (0), make_number (nchars)));