From 57c9f5a8a8021a6bfe2750c350a7cef3d7a31d5e Mon Sep 17 00:00:00 2001 From: Bananymous Date: Mon, 4 Aug 2025 19:07:44 +0300 Subject: [PATCH] LibC: lock mutex when pthread_cond_timedwait times out --- userspace/libraries/LibC/pthread.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/userspace/libraries/LibC/pthread.cpp b/userspace/libraries/LibC/pthread.cpp index 48f7fe85..c60b758b 100644 --- a/userspace/libraries/LibC/pthread.cpp +++ b/userspace/libraries/LibC/pthread.cpp @@ -1164,7 +1164,10 @@ int pthread_cond_timedwait(pthread_cond_t* __restrict cond, pthread_mutex_t* __r while (BAN::atomic_load(block.signaled) == 0) { if (has_timed_out(abstime, cond->attr.clock)) + { + pthread_mutex_lock(mutex); return ETIMEDOUT; + } sched_yield(); }