From c7f078dcbc96cc0d2cbaea84d7ee3c8a268d8fdf Mon Sep 17 00:00:00 2001 From: Tiago Cunha Date: Sun, 18 Mar 2012 01:40:26 +0000 Subject: [PATCH] Sync OpenBSD patchset 1050: Store context off before moving the cursor when wrapping, to fix long standing bug drawing over the status line. --- screen-write.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/screen-write.c b/screen-write.c index 4b3954d3..8b28ccbb 100644 --- a/screen-write.c +++ b/screen-write.c @@ -1071,9 +1071,6 @@ 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) { xx = screen_size_x(s) - s->cx - width; @@ -1087,6 +1084,9 @@ 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)