Sync OpenBSD patchset 1055:

Revert screen-write.c r1.54 and fix the bug properly. After wrapping a
line in a pane, the cursor needs to move to the next line unless it
scrolled.
This commit is contained in:
Tiago Cunha
2012-03-18 01:57:01 +00:00
parent 070d266aae
commit 21ab66569c
2 changed files with 8 additions and 5 deletions

5
tty.c
View File

@@ -1000,7 +1000,10 @@ tty_cmd_cell(struct tty *tty, const struct tty_ctx *ctx)
* The pane doesn't fill the entire line, the linefeed
* will already have happened, so just move the cursor.
*/
tty_cursor_pane(tty, ctx, 0, ctx->ocy + 1);
if (ctx->ocy != wp->yoff + wp->sy)
tty_cursor_pane(tty, ctx, 0, ctx->ocy + 1);
else
tty_cursor_pane(tty, ctx, 0, ctx->ocy);
} else if (tty->cx < tty->sx) {
/*
* The cursor isn't in the last position already, so