--- libev/event.c 2007/11/03 21:58:51 1.7 +++ libev/event.c 2007/11/03 22:10:39 1.8 @@ -35,11 +35,19 @@ #include "event.h" -#define dLOOPev -#define dLOOPbase +#ifdef EV_MULTIPLICITY +# define dLOOPev struct ev_loop *loop = ev->ev_base->loop +# define dLOOPbase struct ev_loop *loop = base->loop +#else +# define dLOOPev +# define dLOOPbase +#endif struct event_base { +#ifdef EV_MULTIPLICITY + struct ev_loop *loop; +#endif int dummy; }; @@ -83,6 +91,8 @@ void event_base_free (struct event_base *base) { + dLOOPbase; + /* nop */ } @@ -265,7 +275,8 @@ int event_base_loop (struct event_base *base, int flags) { dLOOPbase; - ev_loop (EV_A_ flags | EVLOOP_ONESHOT); + + ev_loop (EV_A_ flags); return 0; }