diff options
Diffstat (limited to 'miscutils')
| -rw-r--r-- | miscutils/less.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/miscutils/less.c b/miscutils/less.c index 3016c5b47..c5820d325 100644 --- a/miscutils/less.c +++ b/miscutils/less.c | |||
| @@ -428,14 +428,13 @@ static void read_lines(void) | |||
| 428 | w -= 8; | 428 | w -= 8; |
| 429 | 429 | ||
| 430 | p = current_line = ((char*)xmalloc(w + 4)) + 4; | 430 | p = current_line = ((char*)xmalloc(w + 4)) + 4; |
| 431 | max_fline += last_terminated; | ||
| 432 | if (!last_terminated) { | 431 | if (!last_terminated) { |
| 433 | const char *cp = flines[max_fline]; | 432 | const char *cp = flines[max_fline]; |
| 434 | strcpy(p, cp); | 433 | p = stpcpy(p, cp); |
| 435 | p += strlen(current_line); | 434 | free(MEMPTR(cp)); |
| 436 | free(MEMPTR(flines[max_fline])); | ||
| 437 | /* last_line_pos is still valid from previous read_lines() */ | 435 | /* last_line_pos is still valid from previous read_lines() */ |
| 438 | } else { | 436 | } else { |
| 437 | max_fline++; | ||
| 439 | last_line_pos = 0; | 438 | last_line_pos = 0; |
| 440 | } | 439 | } |
| 441 | 440 | ||
