*/
#ifndef EV_STANDALONE
# include "config.h"
+
+# if HAVE_CLOCK_GETTIME
+# define EV_USE_MONOTONIC 1
+# define EV_USE_REALTIME 1
+# endif
+
+# if HAVE_SELECT && HAVE_SYS_SELECT_H
+# define EV_USE_SELECT 1
+# endif
+
+# if HAVE_POLL && HAVE_POLL_H
+# define EV_USE_POLL 1
+# endif
+
+# if HAVE_EPOLL && HAVE_EPOLL_CTL && HAVE_SYS_EPOLL_H
+# define EV_USE_EPOLL 1
+# endif
+
+# if HAVE_KQUEUE && HAVE_WORKING_KQUEUE && HAVE_SYS_EVENT_H && HAVE_SYS_QUEUE_H
+# define EV_USE_KQUEUE 1
+# endif
+
#endif
#include <math.h>
if (anfds [fd].events)
{
anfds [fd].events = 0;
- fd_change (fd);
+ fd_change (EV_A_ fd);
}
}
loop_init (EV_A_ methods);
- if (ev_methods (EV_A))
+ if (ev_method (EV_A))
return loop;
return 0;
}
void
-ev_default_fork (EV_P)
+ev_default_fork (void)
{
+#if EV_MULTIPLICITY
+ struct ev_loop *loop = default_loop;
+#endif
+
loop_fork (EV_A);
ev_io_stop (EV_A_ &sigev);
static void
epoll_fork (EV_P)
{
- int fd;
-
epoll_fd = epoll_create (256);
fcntl (epoll_fd, F_SETFD, FD_CLOEXEC);
- fd_rearm_all ();
+ fd_rearm_all (EV_A);
}
fcntl (kqueue_fd, F_SETFD, FD_CLOEXEC);
/* re-register interest in fds */
- fd_rearm_all ();
+ fd_rearm_all (EV_A);
}
method_poll = poll_poll;
pollidxs = 0; pollidxmax = 0;
- polls = 0; pollsmax = 0; pollscnt = 0;
+ polls = 0; pollmax = 0; pollcnt = 0;
return EVMETHOD_POLL;
}
-/* $Id: evdns.c,v 1.9 2007-11-04 18:15:16 root Exp $ */
+/* $Id: evdns.c,v 1.10 2007-11-04 18:29:44 root Exp $ */
/* The original version of this module was written by Adam Langley; for
* a history of modifications, check out the subversion logs.
#endif
#ifdef WIN32
-#ifndef EV_STANDALONE
+#ifndef EV_EMBED
#include "misc.h"
#endif
#endif
if (x_cur)
x_cur = (struct event_base *)ev_loop_new (EVMETHOD_AUTO);
else
- x_cur = ev_default_loop (EVMETHOD_AUTO);
+ x_cur = (struct event_base *)ev_default_loop (EVMETHOD_AUTO);
#else
assert (("multiple event bases not supported when not compiled with EV_MULTIPLICITY", !x_cur));
dLOOPbase;
#if EV_MULTIPLICITY
- ev_loop_delete (loop);
+ if (ev_default_loop (EVMETHOD_AUTO) != loop)
+ ev_loop_destroy (loop);
#endif
}
int event_base_priority_init (struct event_base *base, int npri)
{
- dLOOPbase;
+ /*dLOOPbase;*/
return 0;
}