summaryrefslogtreecommitdiffstats
path: root/server-window.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2009-11-06 10:42:06 +0000
committerNicholas Marriott <nicm@openbsd.org>2009-11-06 10:42:06 +0000
commitf98d13e7dc2500d84a382d309f95dad9e7eec01a (patch)
treefa4d10b0b933ab051d7d3d6bc3dad4e23c8d8b63 /server-window.c
parentbed8153ba00fef8ed2f618463fa631c71b8f51cf (diff)
Don't try enable/disable the event if the window pane is dead (fd == -1), as
the event will have been freed.
Diffstat (limited to 'server-window.c')
-rw-r--r--server-window.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/server-window.c b/server-window.c
index 020af041..cb819dfe 100644
--- a/server-window.c
+++ b/server-window.c
@@ -70,10 +70,12 @@ server_window_loop(void)
continue;
TAILQ_FOREACH(wp, &w->panes, entry) {
- if (server_window_backoff(wp))
- bufferevent_disable(wp->event, EV_READ);
- else
- bufferevent_enable(wp->event, EV_READ);
+ if (wp->fd != -1) {
+ if (server_window_backoff(wp))
+ bufferevent_disable(wp->event, EV_READ);
+ else
+ bufferevent_enable(wp->event, EV_READ);
+ }
}
for (j = 0; j < ARRAY_LENGTH(&sessions); j++) {