Fix check for expired events.

This would trigger a infinite loop if a timeout expired and the next timeout
was not expired yet, but less than 1 second from being expired.
This commit is contained in:
Guus Sliepen 2012-11-29 14:32:12 +01:00
parent 8825cddd0d
commit d9c70767aa

View file

@ -182,7 +182,7 @@ bool event_loop(void) {
timeout_t *timeout = timeout_tree.head->data;
timersub(&timeout->tv, &now, &diff);
if(diff.tv_sec <= 0) {
if(diff.tv_sec < 0) {
timeout->cb(timeout->data);
if(timercmp(&timeout->tv, &now, <))
timeout_del(timeout);