From: Fredrik Tolf Date: Sat, 11 Mar 2017 05:08:03 +0000 (+0000) Subject: lib: Fixed potential kqueue timespec storage bug. X-Git-Url: http://dolda2000.com/gitweb/?p=ashd.git;a=commitdiff_plain;h=6f7dbebc025e1731bb09c517bd86b9b1a5679230 lib: Fixed potential kqueue timespec storage bug. --- diff --git a/lib/mtio-kqueue.c b/lib/mtio-kqueue.c index b4e7427..7d086e2 100644 --- a/lib/mtio-kqueue.c +++ b/lib/mtio-kqueue.c @@ -287,12 +287,13 @@ int ioloop(void) } while(blockers != NULL) { now = time(NULL); + toval = &(struct timespec){}; if(timeheap.d == 0) toval = NULL; else if(timeheap.b[0]->to > now) - toval = &(struct timespec){.tv_sec = timeheap.b[0]->to - now}; + *toval = (struct timespec){.tv_sec = timeheap.b[0]->to - now}; else - toval = &(struct timespec){.tv_sec = 1}; + *toval = (struct timespec){.tv_sec = 1}; if(exitstatus) break; nev = kevent(qfd, NULL, 0, evs, sizeof(evs) / sizeof(*evs), toval);