diff options
author | 2012-03-17 17:36:03 +0000 | |
---|---|---|
committer | 2012-03-17 17:36:03 +0000 | |
commit | e5878a5d2a8ce9ec88a96ab5ccc8ce76111a0898 (patch) | |
tree | 5f971bf3f98aaf3cf57d69fab9d366dadbd4aa3f /usr.bin/tmux/screen-write.c | |
parent | some updates to reflect reality; prompted by a diff from Daniel Bolgheroni (diff) | |
download | wireguard-openbsd-e5878a5d2a8ce9ec88a96ab5ccc8ce76111a0898.tar.xz wireguard-openbsd-e5878a5d2a8ce9ec88a96ab5ccc8ce76111a0898.zip |
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/screen-write.c')
-rw-r--r-- | usr.bin/tmux/screen-write.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/usr.bin/tmux/screen-write.c b/usr.bin/tmux/screen-write.c index a98a303923c..16811758576 100644 --- a/usr.bin/tmux/screen-write.c +++ b/usr.bin/tmux/screen-write.c @@ -1,4 +1,4 @@ -/* $OpenBSD: screen-write.c,v 1.54 2012/03/14 23:29:07 nicm Exp $ */ +/* $OpenBSD: screen-write.c,v 1.55 2012/03/17 17:36:03 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -1071,8 +1071,11 @@ screen_write_cell(struct screen_write_ctx *ctx, return; } + /* Initialise the redraw context, saving the last cell. */ + screen_write_initctx(ctx, &ttyctx, 1); + /* If in insert mode, make space for the cells. */ - if (s->mode & MODE_INSERT && s->cx <= screen_size_x(s) - width) { + if ((s->mode & MODE_INSERT) && s->cx <= screen_size_x(s) - width) { xx = screen_size_x(s) - s->cx - width; grid_move_cells(s->grid, s->cx + width, s->cx, s->cy, xx); insert = 1; @@ -1084,9 +1087,6 @@ screen_write_cell(struct screen_write_ctx *ctx, s->cx = 0; /* carriage return */ } - /* Initialise the redraw context, saving the last cell. */ - screen_write_initctx(ctx, &ttyctx, 1); - /* Sanity checks. */ if (((s->mode & MODE_WRAP) && s->cx > screen_size_x(s) - width) || s->cy > screen_size_y(s) - 1) |