diff options
author | Tiago Cunha <tcunha@gmx.com> | 2010-02-26 13:26:44 +0000 |
---|---|---|
committer | Tiago Cunha <tcunha@gmx.com> | 2010-02-26 13:26:44 +0000 |
commit | ecac081a555b6513b91c5e0b8c93fa753e41becf (patch) | |
tree | 87394a38f2586e7c88e495f6fbbebf1fef308b4b /server-window.c | |
parent | b4c2710bf7e155586592e95f600e98cd8518f098 (diff) | |
download | rtmux-ecac081a555b6513b91c5e0b8c93fa753e41becf.tar.gz rtmux-ecac081a555b6513b91c5e0b8c93fa753e41becf.tar.bz2 rtmux-ecac081a555b6513b91c5e0b8c93fa753e41becf.zip |
Sync OpenBSD patchset 648:
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.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/server-window.c b/server-window.c index 88002a3a..2a933cc3 100644 --- a/server-window.c +++ b/server-window.c @@ -1,4 +1,4 @@ -/* $Id: server-window.c,v 1.13 2009-12-04 22:14:47 tcunha Exp $ */ +/* $Id: server-window.c,v 1.14 2010-02-26 13:26:44 tcunha Exp $ */ /* * Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net> @@ -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 |