Change how sync works to always send the end sequence after all output

is done when we are returning to the event loop (since we always move
the cursor at that point). Also a man fix from jmc.
This commit is contained in:
nicm
2020-04-20 14:59:31 +00:00
parent 135bb1edee
commit 2083a6ea20
7 changed files with 29 additions and 25 deletions

View File

@ -119,7 +119,6 @@ screen_write_initctx(struct screen_write_ctx *ctx, struct tty_ctx *ttyctx,
ttyctx->orupper = s->rupper;
if (sync && !ctx->sync && ttyctx->wp != NULL) {
log_debug("%s: starting sync", __func__);
tty_write(tty_cmd_syncstart, ttyctx);
ctx->sync = 1;
}
@ -184,8 +183,6 @@ screen_write_start(struct screen_write_ctx *ctx, struct window_pane *wp,
void
screen_write_stop(struct screen_write_ctx *ctx)
{
struct tty_ctx ttyctx;
screen_write_collect_end(ctx);
screen_write_collect_flush(ctx, 0, __func__);
@ -196,12 +193,6 @@ screen_write_stop(struct screen_write_ctx *ctx)
ctx->wp->skipped += ctx->skipped;
}
if (ctx->sync) {
screen_write_initctx(ctx, &ttyctx, 0);
tty_write(tty_cmd_syncend, &ttyctx);
log_debug("%s: ending sync", __func__);
}
free(ctx->item);
}