summaryrefslogtreecommitdiffstats
path: root/server-window.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2010-02-19 00:03:21 +0000
committerNicholas Marriott <nicm@openbsd.org>2010-02-19 00:03:21 +0000
commit3a89d1ef7f4e9da3b3606df9385b79a77322963e (patch)
treec384809f5eb2902e8a11bf19b0a180953a21aa42 /server-window.c
parenta61b8a2033cd53281a7226affb97ddcb8b6689da (diff)
copy mode uses the real screen as backing and if it is updated while copying,
strange things can happen. So, freeze reading from the pty while in copy mode.
Diffstat (limited to 'server-window.c')
-rw-r--r--server-window.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/server-window.c b/server-window.c
index 048077e0..acac83c0 100644
--- a/server-window.c
+++ b/server-window.c
@@ -69,7 +69,9 @@ server_window_loop(void)
continue;
TAILQ_FOREACH(wp, &w->panes, entry) {
- if (wp->fd != -1) {
+ if (wp->fd == -1)
+ continue;
+ if (!(wp->flags & PANE_FREEZE)) {
if (server_window_backoff(wp))
bufferevent_disable(wp->event, EV_READ);
else