summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@cvs.openbsd.org>2009-06-23 20:17:31 +0000
committerNicholas Marriott <nicm@cvs.openbsd.org>2009-06-23 20:17:31 +0000
commit7be31351edf2b281f60717286b4a211c336495f5 (patch)
tree06aa6d985a8d3ce34b35d275b6ca7604525a8024
parent1aa8d8f9eed0bd069f1bb1b2d74f74465716cc26 (diff)
If a pane is "zombified" (remain-on-exit flag), don't continue to queue key and
mouse input for it (otherwise they are processed after respawn).
-rw-r--r--usr.bin/tmux/window.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/usr.bin/tmux/window.c b/usr.bin/tmux/window.c
index e282336e863..70bb1812f2c 100644
--- a/usr.bin/tmux/window.c
+++ b/usr.bin/tmux/window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: window.c,v 1.2 2009/06/05 07:18:37 nicm Exp $ */
+/* $OpenBSD: window.c,v 1.3 2009/06/23 20:17:30 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -554,6 +554,9 @@ window_pane_parse(struct window_pane *wp)
void
window_pane_key(struct window_pane *wp, struct client *c, int key)
{
+ if (wp->fd == -1)
+ return;
+
if (wp->mode != NULL) {
if (wp->mode->key != NULL)
wp->mode->key(wp, c, key);
@@ -565,6 +568,9 @@ void
window_pane_mouse(
struct window_pane *wp, struct client *c, u_char b, u_char x, u_char y)
{
+ if (wp->fd == -1)
+ return;
+
/* XXX convert from 1-based? */
if (x < wp->xoff || x >= wp->xoff + wp->sx)