diff options
-rwxr-xr-x | configure | 6 | ||||
-rw-r--r-- | server.c | 16 | ||||
-rw-r--r-- | tmux.c | 16 |
3 files changed, 35 insertions, 3 deletions
@@ -1,5 +1,5 @@ #!/bin/sh -# $Id: configure,v 1.44 2009-11-08 22:51:34 tcunha Exp $ +# $Id: configure,v 1.45 2009-11-11 09:54:07 nicm Exp $ # # Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net> # @@ -29,6 +29,8 @@ echo "# $TMUX_PLATFORM" >$CONFIG_MK cat <<EOF >>$CONFIG_H #undef HAVE_ASPRINTF #undef HAVE_BROKEN_CMSG_FIRSTHDR +#undef HAVE_BROKEN_KQUEUE +#undef HAVE_BROKEN_POLL #undef HAVE_BZERO #undef HAVE_CRYPT_H #undef HAVE_DAEMON @@ -169,6 +171,8 @@ EOF cat <<EOF >>$CONFIG_H #define HAVE_ASPRINTF #define HAVE_BROKEN_CMSG_FIRSTHDR +#define HAVE_BROKEN_KQUEUE +#define HAVE_BROKEN_POLL #define HAVE_BZERO #define HAVE_DAEMON #define HAVE_FGETLN @@ -1,4 +1,4 @@ -/* $Id: server.c,v 1.225 2009-11-08 23:28:40 tcunha Exp $ */ +/* $Id: server.c,v 1.226 2009-11-11 09:54:07 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -164,7 +164,21 @@ server_start(char *path) setproctitle("server (%s)", rpathbuf); #endif +#ifdef HAVE_BROKEN_KQUEUE + if (setenv("EVENT_NOKQUEUE", "1", 1) != 0) + fatal("setenv failed"); +#endif +#ifdef HAVE_BROKEN_POLL + if (setenv("EVENT_NOPOLL", "1", 1) != 0) + fatal("setenv failed"); +#endif event_init(); +#ifdef HAVE_BROKEN_KQUEUE + unsetenv("EVENT_NOKQUEUE"); +#endif +#ifdef HAVE_BROKEN_POLL + unsetenv("EVENT_NOPOLL"); +#endif server_fd = server_create_socket(); server_client_create(pair[1]); @@ -1,4 +1,4 @@ -/* $Id: tmux.c,v 1.187 2009-11-10 23:34:03 tcunha Exp $ */ +/* $Id: tmux.c,v 1.188 2009-11-11 09:54:07 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -488,7 +488,21 @@ main(int argc, char **argv) exit(1); xfree(path); +#ifdef HAVE_BROKEN_KQUEUE + if (setenv("EVENT_NOKQUEUE", "1", 1) != 0) + fatal("setenv failed"); +#endif +#ifdef HAVE_BROKEN_POLL + if (setenv("EVENT_NOPOLL", "1", 1) != 0) + fatal("setenv failed"); +#endif event_init(); +#ifdef HAVE_BROKEN_KQUEUE + unsetenv("EVENT_NOKQUEUE"); +#endif +#ifdef HAVE_BROKEN_POLL + unsetenv("EVENT_NOPOLL"); +#endif imsg_compose(main_ibuf, msg, PROTOCOL_VERSION, -1, -1, buf, len); |