From 5fdea440cede1690db9a242a091df72f16e53d24 Mon Sep 17 00:00:00 2001 From: nicm Date: Tue, 17 Aug 2021 20:17:21 +0000 Subject: [PATCH] Treat a pane that has died the same as no pane when sending data to control mode clients, GitHub issue 2828. --- control.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/control.c b/control.c index e86429cf..efcbc0ff 100644 --- a/control.c +++ b/control.c @@ -665,7 +665,7 @@ control_write_pending(struct client *c, struct control_pane *cp, size_t limit) uint64_t age, t = get_timer(); wp = control_window_pane(c, cp->pane); - if (wp == NULL) { + if (wp == NULL || wp->fd == -1) { TAILQ_FOREACH_SAFE(cb, &cp->blocks, entry, cb1) { TAILQ_REMOVE(&cp->blocks, cb, entry); control_free_block(cs, cb); @@ -865,7 +865,7 @@ control_check_subs_pane(struct client *c, struct control_sub *csub) struct control_sub_pane *csp, find; wp = window_pane_find_by_id(csub->id); - if (wp == NULL) + if (wp == NULL || wp->fd == -1) return; w = wp->window;