Need to flush out the linefeed after wrapper. GitHub issue 970.
authornicm <nicm@openbsd.org>
Mon, 12 Jun 2017 10:57:35 +0000 (10:57 +0000)
committernicm <nicm@openbsd.org>
Mon, 12 Jun 2017 10:57:35 +0000 (10:57 +0000)
usr.bin/tmux/screen-write.c

index f6b4087..4206f34 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: screen-write.c,v 1.127 2017/06/04 08:02:20 nicm Exp $ */
+/* $OpenBSD: screen-write.c,v 1.128 2017/06/12 10:57:35 nicm Exp $ */
 
 /*
  * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -1339,8 +1339,10 @@ screen_write_cell(struct screen_write_ctx *ctx, const struct grid_cell *gc)
 
        /* Check this will fit on the current line and wrap if not. */
        if ((s->mode & MODE_WRAP) && s->cx > sx - width) {
+               log_debug("%s: wrapped at %u,%u", __func__, s->cx, s->cy);
                screen_write_linefeed(ctx, 1, 8);
                s->cx = 0;
+               screen_write_collect_flush(ctx, 1);
        }
 
        /* Sanity check cursor position. */