diff --git a/libraries/libldap_r/thr_nt.c b/libraries/libldap_r/thr_nt.c index 2bd4474ef4..4a6084a89a 100644 --- a/libraries/libldap_r/thr_nt.c +++ b/libraries/libldap_r/thr_nt.c @@ -107,7 +107,8 @@ ldap_pvt_thread_cond_wait( ldap_pvt_thread_cond_t *cond, int ldap_pvt_thread_cond_broadcast( ldap_pvt_thread_cond_t *cond ) { - SetEvent( *cond ); + while ( WaitForSingleObject( *cond, 0 ) == WAIT_TIMEOUT ) + SetEvent( *cond ); return( 0 ); }