summaryrefslogtreecommitdiffstats
path: root/server.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2010-07-24 19:25:31 +0000
committerNicholas Marriott <nicm@openbsd.org>2010-07-24 19:25:31 +0000
commitbf09b00fe946a06c2f1192bd213f26e5a47889a8 (patch)
tree8b50a665463f0770aba1c0295e9829d1e2f3d13b /server.c
parenta97b7ad11cc6415a120c08bb6598ec9e0ccc5194 (diff)
kqueue(2) is currently broken when used with /dev/null and a few other
devices. An upcoming fix for some problems with the client stdout/stderr handling relies on it working, so make tmux force libevent to use poll(2) via EVENT_NOKQUEUE, until we have fixed kqueue.
Diffstat (limited to 'server.c')
-rw-r--r--server.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/server.c b/server.c
index 0a4e2306..e53fc9c7 100644
--- a/server.c
+++ b/server.c
@@ -139,8 +139,11 @@ server_start(char *path)
fatal("daemon failed");
/* event_init() was called in our parent, need to reinit. */
+ if (setenv("EVENT_NOKQUEUE", "1", 1) != 0)
+ fatal("setenv");
if (event_reinit(ev_base) != 0)
fatal("event_reinit failed");
+ unsetenv("EVENT_NOKQUEUE");
clear_signals();
logfile("server");