#else
assert (("multiple event bases not supported when not compiled with EV_MULTIPLICITY", !x_cur));
- x_cur = (struct event_base *)ev_default_loop (EVMETHOD_AUTO);
+ x_cur = (struct event_base *)(long)ev_default_loop (EVMETHOD_AUTO);
#endif
return x_cur;
void event_set (struct event *ev, int fd, short events, void (*cb)(int, short, void *), void *arg)
{
- printf ("event set %p\n", ev);//D
if (events & EV_SIGNAL)
ev_watcher_init (&ev->iosig.sig, x_cb_sig);
else
int event_add (struct event *ev, struct timeval *tv)
{
- printf ("event add %p %p\n", ev, &ev->to);//D
dLOOPev;
/* disable all watchers */
int event_del (struct event *ev)
{
- printf ("event del %p\n", ev);//D
dLOOPev;
if (ev->ev_events & EV_SIGNAL)
if (ev_is_active (&ev->iosig.sig))
ev_signal_stop (EV_A_ &ev->iosig.sig);
}
- else
+ else if (ev->ev_events & (EV_READ | EV_WRITE))
{
/* io */
if (ev_is_active (&ev->iosig.io))
ev_io_stop (EV_A_ &ev->iosig.io);
}
- printf ("to %p %d\n", &ev->to, ev->to.active);//D
if (ev_is_active (&ev->to))
ev_timer_stop (EV_A_ &ev->to);
if (ev_is_active (&ev->iosig.sig) || ev_is_pending (&ev->iosig.sig))
revents |= EV_SIGNAL;
}
- else
+ else if (ev->ev_events & (EV_READ | EV_WRITE))
{
/* io */
if (ev_is_active (&ev->iosig.io) || ev_is_pending (&ev->iosig.io))