From d8d77691043a5ecd504fb2a82e4e312d947ab19f Mon Sep 17 00:00:00 2001 From: nicm Date: Fri, 12 Jun 2020 08:35:01 +0000 Subject: Check if a pane needs to be paused when output is written rather than just when it is queued. --- control.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'control.c') diff --git a/control.c b/control.c index 8ff7736f..05093d94 100644 --- a/control.c +++ b/control.c @@ -569,6 +569,13 @@ control_write_pending(struct client *c, struct control_pane *cp, size_t limit) } while (used != limit && !TAILQ_EMPTY(&cp->blocks)) { + if (control_check_age(c, wp, cp)) { + if (message != NULL) + evbuffer_free(message); + message = NULL; + break; + } + cb = TAILQ_FIRST(&cp->blocks); if (cb->t < t) age = t - cb->t; -- cgit v1.2.3