term: formfeed: set linefeed correctly when we're at last column with lcf=1

When cursor.lcf is set, that means the cursor column was *not*
incremented when we printed the last character. Thus, we should *not*
decrement the column before setting the linefeed bit.
This commit is contained in:
Daniel Eklöf 2020-02-12 18:06:27 +01:00
parent bcd28bcd14
commit 69a633221f
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

View file

@ -1498,8 +1498,11 @@ term_scroll_reverse(struct terminal *term, int rows)
void
term_formfeed(struct terminal *term)
{
if (term->cursor.point.col > 0)
term->grid->cur_row->cells[term->cursor.point.col - 1].attrs.linefeed = 1;
int col = term->cursor.point.col;
if (!term->cursor.lcf)
col--;
if (col >= 0)
term->grid->cur_row->cells[col].attrs.linefeed = 1;
term_cursor_left(term, term->cursor.point.col);
}