… | |
… | |
964 | anfd->events = 0; |
964 | anfd->events = 0; |
965 | |
965 | |
966 | for (w = (ev_io *)anfd->head; w; w = (ev_io *)((WL)w)->next) |
966 | for (w = (ev_io *)anfd->head; w; w = (ev_io *)((WL)w)->next) |
967 | anfd->events |= (unsigned char)w->events; |
967 | anfd->events |= (unsigned char)w->events; |
968 | |
968 | |
969 | if (o_events !=anfd-> events) |
969 | if (o_events != anfd->events) |
970 | o_reify = EV__IOFDSET; /* actually |= */ |
970 | o_reify = EV__IOFDSET; /* actually |= */ |
971 | } |
971 | } |
972 | |
972 | |
973 | if (o_reify & EV__IOFDSET) |
973 | if (o_reify & EV__IOFDSET) |
974 | backend_modify (EV_A_ fd, o_events, anfd->events); |
974 | backend_modify (EV_A_ fd, o_events, anfd->events); |
… | |
… | |
3577 | ev_async_start (EV_P_ ev_async *w) |
3577 | ev_async_start (EV_P_ ev_async *w) |
3578 | { |
3578 | { |
3579 | if (expect_false (ev_is_active (w))) |
3579 | if (expect_false (ev_is_active (w))) |
3580 | return; |
3580 | return; |
3581 | |
3581 | |
|
|
3582 | w->sent = 0; |
|
|
3583 | |
3582 | evpipe_init (EV_A); |
3584 | evpipe_init (EV_A); |
3583 | |
3585 | |
3584 | EV_FREQUENT_CHECK; |
3586 | EV_FREQUENT_CHECK; |
3585 | |
3587 | |
3586 | ev_start (EV_A_ (W)w, ++asynccnt); |
3588 | ev_start (EV_A_ (W)w, ++asynccnt); |