if (timeout > 0) {
ts.tv_sec = timeout / 1000;
- ts.tv_nsec = timeout * 1000000;
+ ts.tv_nsec = (timeout % 1000) * 1000000;
}
nfds = kevent(poll_fd, NULL, 0, events, ARRAY_SIZE(events), timeout > 0 ? &ts : NULL);
{
gettimeofday(&tv, NULL);
uloop_process_timeouts(&tv);
+ if (uloop_cancelled)
+ break;
uloop_run_events(uloop_get_next_timeout(&tv));
}
}