X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libraries%2Flibldap_r%2Fthr_nt.c;h=935bf4bd1396f8b9a7f9816eb1219314b6608cdf;hb=526d1e6981cca5166f5f0533c266113003700481;hp=60276ab492f28d59fd0cf80946ff847e4f98f91c;hpb=72ba4cfb715001d30a6e48a2d7012f060f29d684;p=openldap diff --git a/libraries/libldap_r/thr_nt.c b/libraries/libldap_r/thr_nt.c index 60276ab492..935bf4bd13 100644 --- a/libraries/libldap_r/thr_nt.c +++ b/libraries/libldap_r/thr_nt.c @@ -1,5 +1,6 @@ +/* $OpenLDAP$ */ /* - * Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA + * Copyright 1998-2000 The OpenLDAP Foundation, Redwood City, California, USA * All rights reserved. * * Redistribution and use in source and binary forms are permitted only @@ -11,12 +12,19 @@ /* thr_nt.c - wrapper around NT threads */ #include "portable.h" -#include "ldap_pvt_thread.h" #if defined( HAVE_NT_THREADS ) +#include "ldap_pvt_thread.h" + int -ldap_pvt_thread_initialize( void ) +ldap_int_thread_initialize( void ) +{ + return 0; +} + +int +ldap_int_thread_destroy( void ) { return 0; } @@ -42,7 +50,7 @@ int ldap_pvt_thread_join( ldap_pvt_thread_t thread, void **thread_return ) { DWORD status; - status = WaitForSingleObject( thread, INFINITE ); + status = WaitForSingleObject( (HANDLE) thread, INFINITE ); if (status == WAIT_FAILED) { return -1; } @@ -58,6 +66,7 @@ ldap_pvt_thread_kill( ldap_pvt_thread_t thread, int signo ) int ldap_pvt_thread_yield( void ) { + Sleep( 0 ); return 0; } @@ -84,18 +93,18 @@ ldap_pvt_thread_cond_signal( ldap_pvt_thread_cond_t *cond ) int ldap_pvt_thread_cond_wait( ldap_pvt_thread_cond_t *cond, - ldap_pvt_thread_mutex_t *mutex ) + ldap_pvt_thread_mutex_t *mutex ) { ReleaseMutex( *mutex ); - WaitForSingleObject( *cond, INFINITE ); + SignalObjectAndWait( *mutex, *cond, INFINITE, FALSE ); WaitForSingleObject( *mutex, INFINITE ); return( 0 ); } int -ldap_pvt_thread_cond_broadcast( ldap_pvt_thread_cond_t *cv ) +ldap_pvt_thread_cond_broadcast( ldap_pvt_thread_cond_t *cond ) { - SetEvent( *cv ); + SetEvent( *cond ); return( 0 ); }