| 112 | |
| 113 | |
| 114 | static void uv__kqueue_delete(int kqfd, const struct kevent *ev) { |
| 115 | struct kevent change; |
| 116 | |
| 117 | EV_SET(&change, ev->ident, ev->filter, EV_DELETE, 0, 0, 0); |
| 118 | |
| 119 | if (0 == kevent(kqfd, &change, 1, NULL, 0, NULL)) |
| 120 | return; |
| 121 | |
| 122 | if (errno == EBADF || errno == ENOENT) |
| 123 | return; |
| 124 | |
| 125 | abort(); |
| 126 | } |
| 127 | |
| 128 | |
| 129 | void uv__io_poll(uv_loop_t* loop, int timeout) { |