grid: reflow: fix empty line coalescing

If a range of empty lines ended with a non-empty line at the very
bottom of the to-be-resized grid, all those empty lines were removed.

Closes #2011
This commit is contained in:
Daniel Eklöf 2025-03-29 10:15:13 +01:00
parent 9b776f2d6d
commit c8470f40c1
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
2 changed files with 5 additions and 4 deletions

6
grid.c
View file

@ -985,14 +985,12 @@ grid_resize_and_reflow(
underline_range = underline_range_terminator = NULL;
if (unlikely(col_count > 0 && coalesced_linebreaks > 0)) {
for (size_t apa = 0; apa < coalesced_linebreaks; apa++) {
for (size_t line_no = 0; line_no < coalesced_linebreaks; line_no++) {
/* Erase the remaining cells */
memset(&new_row->cells[new_col_idx], 0,
(new_cols - new_col_idx) * sizeof(new_row->cells[0]));
new_row->linebreak = true;
if (r + 1 < old_rows)
line_wrap();
line_wrap();
}
coalesced_linebreaks = 0;