From 9031537658e89136c6a5bb959f9b9a4338a5d056 Mon Sep 17 00:00:00 2001 From: rpj Date: Wed, 15 Sep 1999 00:56:21 +0000 Subject: Sat Sep 10 12:56:13 1999 Ross Johnson The following code for POSIX read/write locks was contributed by Aurelio Medina. * implement.h (pthread_rwlock_t_): Add. * pthread.h (pthread_rwlock_t): Add. (PTHREAD_RWLOCK_INITIALIZER): Add. Add rwlock function prototypes. * rwlock.c: New module. * pthread.def: Add new rwlock functions. * private.c (_pthread_processInitialize): initialise _pthread_rwlock_test_init_lock critical section. * global.c (_pthread_rwlock_test_init_lock): Add. * mutex.c (pthread_mutex_destroy): Don't free mutex memory if mutex is PTHREAD_MUTEX_INITIALIZER and has not been initialised yet. tests/ChangeLog Sep 15 1999 Ross Johnson * rwlock1.c: New test. * rwlock2.c: New test. * rwlock3.c: New test. * rwlock4.c: New test. --- private.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'private.c') diff --git a/private.c b/private.c index ede6b14..cd01fe5 100644 --- a/private.c +++ b/private.c @@ -77,6 +77,7 @@ _pthread_processInitialize (void) */ InitializeCriticalSection(&_pthread_mutex_test_init_lock); InitializeCriticalSection(&_pthread_cond_test_init_lock); + InitializeCriticalSection(&_pthread_rwlock_test_init_lock); return (_pthread_processInitialized); @@ -131,8 +132,9 @@ _pthread_processTerminate (void) /* * Destroy the global test and init check locks. */ - DeleteCriticalSection(&_pthread_mutex_test_init_lock); + DeleteCriticalSection(&_pthread_rwlock_test_init_lock); DeleteCriticalSection(&_pthread_cond_test_init_lock); + DeleteCriticalSection(&_pthread_mutex_test_init_lock); _pthread_processInitialized = FALSE; } -- cgit v1.2.3