diff options
Diffstat (limited to 'libbb')
-rw-r--r-- | libbb/get_line_from_file.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/libbb/get_line_from_file.c b/libbb/get_line_from_file.c index a0ed919..9be1068 100644 --- a/libbb/get_line_from_file.c +++ b/libbb/get_line_from_file.c @@ -44,8 +44,12 @@ char* FAST_FUNC bb_get_chunk_with_continuation(FILE *file, int *end, int *lineno idx -= 2; } } - if (end) + if (end) { *end = idx; + /* handle corner case when the file is not ended with '\n' */ + if (ch == EOF && lineno != NULL) + (*lineno)++; + } if (linebuf) { // huh, does fgets discard prior data on error like this? // I don't think so.... |