Add a flag to protect against nested syncs and add some extra logging to

redrawing.
This commit is contained in:
nicm
2020-04-18 06:20:50 +00:00
parent d94bdf7420
commit 1d2bd864f2
4 changed files with 18 additions and 5 deletions

8
tty.c
View File

@ -1438,15 +1438,19 @@ tty_draw_line(struct tty *tty, struct window_pane *wp, struct screen *s,
void
tty_sync_start(struct tty *tty)
{
if (tty_get_flags(tty) & TERM_SYNC)
if ((~tty->flags & TTY_SYNCING) && (tty_get_flags(tty) & TERM_SYNC)) {
tty_puts(tty, "\033P=1s\033\\");
tty->flags |= TTY_SYNCING;
}
}
void
tty_sync_end(struct tty *tty)
{
if (tty_get_flags(tty) & TERM_SYNC)
if (tty_get_flags(tty) & TERM_SYNC) {
tty_puts(tty, "\033P=2s\033\\");
tty->flags &= ~TTY_SYNCING;
}
}
static int