diff --git a/libraries/libldap_r/thr_nt.c b/libraries/libldap_r/thr_nt.c index 6ebb0ccce8..b818538a85 100644 --- a/libraries/libldap_r/thr_nt.c +++ b/libraries/libldap_r/thr_nt.c @@ -109,7 +109,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 ); }