diff --git a/ChangeLog b/ChangeLog index 1de943ce93a48e93a213d267840dafec47d59593..5d93b652c7b824aa4d0d47bb2f1c7b2acd1b3e72 100644 --- a/ChangeLog +++ b/ChangeLog @@ -12,6 +12,8 @@ * src/prompt.c (do_statusbar_output): Don't move too many bytes. This fixes Savannah bug #47219 (uncovered by r5655). * src/prompt.c (do_statusbar_output): Elide a variable. + * src/prompt.c (do_statusbar_delete): There is no need for nulling: + the charmove() already copies the terminating null byte. 2016-02-21 Benno Schulenberg <bensberg@justemail.net> * src/files.c (input_tab): If the first Tab added the part that all diff --git a/src/prompt.c b/src/prompt.c index 957c9db8b8bb9b578dc58141d96852224858f94e..8aa6c5342896125625ea9dc8606a1efdf5702117 100644 --- a/src/prompt.c +++ b/src/prompt.c @@ -349,14 +349,12 @@ void do_statusbar_delete(void) if (answer[statusbar_x] != '\0') { int char_buf_len = parse_mbchar(answer + statusbar_x, NULL, NULL); - size_t line_len = strlen(answer + statusbar_x); assert(statusbar_x < strlen(answer)); charmove(answer + statusbar_x, answer + statusbar_x + char_buf_len, strlen(answer) - statusbar_x - char_buf_len + 1); - - null_at(&answer, statusbar_x + line_len - char_buf_len); + align(&answer); update_the_statusbar(); }