aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--grid-view.c2
-rw-r--r--screen-write.c1
2 files changed, 2 insertions, 1 deletions
diff --git a/grid-view.c b/grid-view.c
index b84ac64e..fe096252 100644
--- a/grid-view.c
+++ b/grid-view.c
@@ -194,7 +194,7 @@ grid_view_insert_cells(struct grid *gd, u_int px, u_int py, u_int nx, u_int bg)
sx = grid_view_x(gd, gd->sx);
- if (px == sx - 1)
+ if (px >= sx - 1)
grid_clear(gd, px, py, 1, 1, bg);
else
grid_move_cells(gd, px + nx, px, py, sx - px - nx, bg);
diff --git a/screen-write.c b/screen-write.c
index f630e0c8..f0ea4c14 100644
--- a/screen-write.c
+++ b/screen-write.c
@@ -1260,6 +1260,7 @@ screen_write_cell(struct screen_write_ctx *ctx, const struct grid_cell *gc)
/* Create space for character in insert mode. */
if (s->mode & MODE_INSERT) {
+ screen_write_collect_flush(ctx, 0);
ttyctx.num = width;
tty_write(tty_cmd_insertcharacter, &ttyctx);
}