aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2017-02-09 12:01:12 +0000
committerThomas Adam <thomas@xteddy.org>2017-02-09 12:01:12 +0000
commitcb50a51127f02ea8cfe41152d35bcc27dffc83cf (patch)
treea58e7cda795ea07c15586a5120ca097c1c8a08d4
parent79409dc1cc24e9e90e3818d547d0bacc698d027b (diff)
parentddb3750c8ba1f22ab6d96d2ef929e65dc86534df (diff)
downloadrtmux-cb50a51127f02ea8cfe41152d35bcc27dffc83cf.tar.gz
rtmux-cb50a51127f02ea8cfe41152d35bcc27dffc83cf.tar.bz2
rtmux-cb50a51127f02ea8cfe41152d35bcc27dffc83cf.zip
Merge branch 'obsd-master'
-rw-r--r--screen-write.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/screen-write.c b/screen-write.c
index 43d12941..f630e0c8 100644
--- a/screen-write.c
+++ b/screen-write.c
@@ -1153,11 +1153,9 @@ screen_write_cell(struct screen_write_ctx *ctx, const struct grid_cell *gc)
return;
ctx->cells++;
- /* Flush any existing scrolling. */
- screen_write_collect_flush(ctx, 1);
-
/* If the width is zero, combine onto the previous character. */
if (width == 0) {
+ screen_write_collect_flush(ctx, 0);
if ((gc = screen_write_combine(ctx, &gc->data, &xx)) != 0) {
screen_write_cursormove(ctx, xx, s->cy);
screen_write_initctx(ctx, &ttyctx);
@@ -1167,6 +1165,9 @@ screen_write_cell(struct screen_write_ctx *ctx, const struct grid_cell *gc)
return;
}
+ /* Flush any existing scrolling. */
+ screen_write_collect_flush(ctx, 1);
+
/* If this character doesn't fit, ignore it. */
if ((~s->mode & MODE_WRAP) &&
width > 1 &&