diff options
author | marha <marha@users.sourceforge.net> | 2011-07-18 10:33:05 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2011-07-18 10:33:05 +0200 |
commit | 88101146f2ec7d53ffb793e365f05097ffd35fd3 (patch) | |
tree | db77eef572a00c62c8d9485c4786f682e20a2fd0 /pthreads/ptw32_processTerminate.c | |
parent | 772373ccc8da2b2019555228f4972cc0c5a885a4 (diff) | |
download | vcxsrv-88101146f2ec7d53ffb793e365f05097ffd35fd3.tar.gz vcxsrv-88101146f2ec7d53ffb793e365f05097ffd35fd3.tar.bz2 vcxsrv-88101146f2ec7d53ffb793e365f05097ffd35fd3.zip |
cvs version of pthreads
Diffstat (limited to 'pthreads/ptw32_processTerminate.c')
-rw-r--r-- | pthreads/ptw32_processTerminate.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/pthreads/ptw32_processTerminate.c b/pthreads/ptw32_processTerminate.c index d2dfa7a24..83f0f23ca 100644 --- a/pthreads/ptw32_processTerminate.c +++ b/pthreads/ptw32_processTerminate.c @@ -65,6 +65,7 @@ ptw32_processTerminate (void) if (ptw32_processInitialized) { ptw32_thread_t * tp, * tpNext; + ptw32_mcs_local_node_t node; if (ptw32_selfThreadKey != NULL) { @@ -86,7 +87,7 @@ ptw32_processTerminate (void) ptw32_cleanupKey = NULL; } - EnterCriticalSection (&ptw32_thread_reuse_lock); + ptw32_mcs_lock_acquire(&ptw32_thread_reuse_lock, &node); tp = ptw32_threadReuseTop; while (tp != PTW32_THREAD_REUSE_EMPTY) @@ -96,17 +97,7 @@ ptw32_processTerminate (void) tp = tpNext; } - LeaveCriticalSection (&ptw32_thread_reuse_lock); - - /* - * Destroy the global locks and other objects. - */ - DeleteCriticalSection (&ptw32_spinlock_test_init_lock); - DeleteCriticalSection (&ptw32_rwlock_test_init_lock); - DeleteCriticalSection (&ptw32_cond_test_init_lock); - DeleteCriticalSection (&ptw32_cond_list_lock); - DeleteCriticalSection (&ptw32_mutex_test_init_lock); - DeleteCriticalSection (&ptw32_thread_reuse_lock); + ptw32_mcs_lock_release(&node); ptw32_processInitialized = PTW32_FALSE; } |