diff --git a/ChangeLog b/ChangeLog index eb00c5a33b2ccaa401600e3e3c28f2e925b8bb65..74c671367f7bf6c16d34bff30add4b058d3bf5d7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,8 @@ * src/search.c (get_history_completion): Avoid leaking memory when tabbing on a string that does not occur in the history. This fixes Savannah bug #47124 reported by Mike Frysinger. + * src/files.c (input_tab): Parse a character in the correct + buffer. This fixes Savannah bug #47199. 2016-02-18 Benno Schulenberg <bensberg@justemail.net> * src/search.c (do_replace_loop), src/text.c (do_int_spell_fix), diff --git a/src/files.c b/src/files.c index cd420d912ae7016ccc78507897c8758488399d84..ad6779bdc6aa8cbe3a75632dc0b46de3b2a7b328 100644 --- a/src/files.c +++ b/src/files.c @@ -2830,7 +2830,7 @@ char *input_tab(char *buf, bool allow_files, size_t *place, bool if (match < num_matches || matches[0][common_len] == '\0') break; - common_len += parse_mbchar(buf + common_len, NULL, NULL); + common_len += parse_mbchar(matches[0] + common_len, NULL, NULL); } free(match1_mb);