diff options
| author | rpj <rpj> | 2005-06-03 14:47:46 +0000 | 
|---|---|---|
| committer | rpj <rpj> | 2005-06-03 14:47:46 +0000 | 
| commit | 387fbc0028e84462e7470fa60926cc438a7d2bdd (patch) | |
| tree | 9864bafbe96dfae45391c89c97723813190eef31 | |
| parent | cd3c708380761302fb5ffc6531d396f71b706b4f (diff) | |
''
| -rw-r--r-- | pthread_once.c | 4 | 
1 files changed, 2 insertions, 2 deletions
diff --git a/pthread_once.c b/pthread_once.c index aa09d99..96d45f2 100644 --- a/pthread_once.c +++ b/pthread_once.c @@ -60,7 +60,7 @@ pthread_once (pthread_once_t * once_control, void (*init_routine) (void))        ptw32_mcs_lock_acquire((ptw32_mcs_lock_t *)&once_control->lock, &node); -      if (!InterlockedExchangeAdd((LPLONG)&once_control->done, 0L)) +      if (!once_control->done)  	{  #ifdef _MSC_VER @@ -75,7 +75,7 @@ pthread_once (pthread_once_t * once_control, void (*init_routine) (void))  #pragma inline_depth()  #endif -	  (void) PTW32_INTERLOCKED_EXCHANGE((LPLONG)&once_control->done, (LONG)PTW32_TRUE); +	  once_control->done = PTW32_TRUE;  	}  	ptw32_mcs_lock_release(&node);  | 
