diff options
author | Nicholas Marriott <nicm@cvs.openbsd.org> | 2012-03-17 17:36:04 +0000 |
---|---|---|
committer | Nicholas Marriott <nicm@cvs.openbsd.org> | 2012-03-17 17:36:04 +0000 |
commit | 5c3070242bacb703ce1dfb5e58821fe2f3751fae (patch) | |
tree | eba2869343026946ee9d1c91945031df7e39664b /usr.bin/tmux/tty.c | |
parent | 5c3efb1cc8fa76c8bd3a585218d78e253ad54209 (diff) |
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.
Diffstat (limited to 'usr.bin/tmux/tty.c')
-rw-r--r-- | usr.bin/tmux/tty.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/usr.bin/tmux/tty.c b/usr.bin/tmux/tty.c index 12810623524..135d22bde50 100644 --- a/usr.bin/tmux/tty.c +++ b/usr.bin/tmux/tty.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tty.c,v 1.121 2012/03/15 10:36:00 nicm Exp $ */ +/* $OpenBSD: tty.c,v 1.122 2012/03/17 17:36:03 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -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 |