diff --git a/src/files.c b/src/files.c index 95a0db90b99a17c89d6843c9c90190e574c54d11..cb8bd768942d656fdb901001f02b55224d93200f 100644 --- a/src/files.c +++ b/src/files.c @@ -2962,12 +2962,11 @@ void load_history(void) size_t buf_len = 0; ssize_t read; - while ((read = getline(&line, &buf_len, hist)) >= 0) { - if (read > 0 && line[read - 1] == '\n') - line[--read] = '\0'; - if (read > 0) { + while ((read = getline(&line, &buf_len, hist)) > 0) { + line[--read] = '\0'; + if (read > 0) update_history(history, line); - } else + else history = &replace_history; }