[hurd,commited,2/3] htl: make pthread_cond_destroy return EBUSY on waiters

Message ID 20200209192750.292859-2-samuel.thibault@ens-lyon.org
State Committed, archived
Headers

Commit Message

Samuel Thibault Feb. 9, 2020, 7:27 p.m. UTC
  ---
 sysdeps/htl/pt-cond-destroy.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
  

Patch

diff --git a/sysdeps/htl/pt-cond-destroy.c b/sysdeps/htl/pt-cond-destroy.c
index 62cc77b0d2..b28e7e1ada 100644
--- a/sysdeps/htl/pt-cond-destroy.c
+++ b/sysdeps/htl/pt-cond-destroy.c
@@ -22,7 +22,14 @@ 
 int
 __pthread_cond_destroy (pthread_cond_t *cond)
 {
-  return 0;
+  int ret = 0;
+
+  __pthread_spin_lock (&cond->__lock);
+  if (cond->__queue)
+    ret = EBUSY;
+  __pthread_spin_unlock (&cond->__lock);
+
+  return ret;
 }
 
 strong_alias (__pthread_cond_destroy, pthread_cond_destroy);