From d600de916f8ad500adc3dc7c060308a2abcfe381 Mon Sep 17 00:00:00 2001 From: Aki Tuomi Date: Tue, 13 Feb 2018 09:14:37 +0200 Subject: [PATCH] lib: Fix usec comparison in timeout_update_next When tv_usec is exactly 1000000, call to kevent() will fail because tv_sec does not get incremented. Found by Adrian Gonzalez --- src/lib/ioloop.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/ioloop.c b/src/lib/ioloop.c index 0c58f8c372..c88561f62c 100644 --- a/src/lib/ioloop.c +++ b/src/lib/ioloop.c @@ -232,7 +232,7 @@ static void timeout_update_next(struct timeout *timeout, struct timeval *tv_now) timeout->next_run.tv_sec += timeout->msecs/1000; timeout->next_run.tv_usec += (timeout->msecs%1000)*1000; - if (timeout->next_run.tv_usec > 1000000) { + if (timeout->next_run.tv_usec >= 1000000) { timeout->next_run.tv_sec++; timeout->next_run.tv_usec -= 1000000; }