OS X is still broken, so ask libevent not to use kqueue or poll.

pull/1/head
Nicholas Marriott 2009-11-11 09:54:07 +00:00
parent 60869fa4c3
commit 7230fe1648
3 changed files with 35 additions and 3 deletions

6
configure vendored
View File

@ -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

View File

@ -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]);

16
tmux.c
View File

@ -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);