diff options
-rw-r--r-- | lib/libc_r/uthread/uthread_kevent.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libc_r/uthread/uthread_kevent.c b/lib/libc_r/uthread/uthread_kevent.c index 796c12c..290094d 100644 --- a/lib/libc_r/uthread/uthread_kevent.c +++ b/lib/libc_r/uthread/uthread_kevent.c @@ -55,8 +55,9 @@ kevent(int kq, const struct kevent *changelist, int nchanges, _thread_run->data.fd.branch = __LINE__; do { - /* Reset the interrupted operation flag: */ + /* Reset the interrupted and timeout flags: */ _thread_run->interrupted = 0; + _thread_run->timeout = 0; _thread_kern_sched_state(PS_FDR_WAIT, __FILE__, __LINE__); @@ -68,7 +69,7 @@ kevent(int kq, const struct kevent *changelist, int nchanges, } rc = _thread_sys_kevent(kq, NULL, 0, eventlist, nevents, &nullts); - } while (rc == 0 && timeout != NULL); + } while (rc == 0 && _thread_run->timeout == 0); } return (rc); } |