epoll: fix logic error in epoll_wait() timeout recomputation

This commit is contained in:
Bert Belder 2017-09-09 19:37:52 +02:00
parent e36129b91b
commit 2a15b3a371

View File

@ -196,9 +196,10 @@ int epoll_wait(epoll_t port_handle,
/* Events were dequeued, but none were relevant. Recompute timeout. */
if (timeout > 0) {
gqcs_timeout = due - GetTickCount64();
ULONGLONG now = GetTickCount64();
gqcs_timeout = (now < due) ? (DWORD)(due - now) : 0;
}
} while (timeout > 0);
} while (gqcs_timeout > 0);
return 0;
}