summaryrefslogtreecommitdiff
path: root/include/c11
diff options
context:
space:
mode:
Diffstat (limited to 'include/c11')
-rw-r--r--include/c11/threads_posix.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/c11/threads_posix.h b/include/c11/threads_posix.h
index 3def6c41ca..ce9853b18b 100644
--- a/include/c11/threads_posix.h
+++ b/include/c11/threads_posix.h
@@ -136,8 +136,14 @@ cnd_timedwait(cnd_t *cond, mtx_t *mtx, const xtime *xt)
{
struct timespec abs_time;
int rt;
+
assert(mtx != NULL);
assert(cond != NULL);
+ assert(xt != NULL);
+
+ abs_time.tv_sec = xt->sec;
+ abs_time.tv_nsec = xt->nsec;
+
rt = pthread_cond_timedwait(cond, mtx, &abs_time);
if (rt == ETIMEDOUT)
return thrd_busy;