diff options
author | Daniel Eischen <deischen@FreeBSD.org> | 2001-02-26 01:06:52 +0000 |
---|---|---|
committer | Daniel Eischen <deischen@FreeBSD.org> | 2001-02-26 01:06:52 +0000 |
commit | c33f8c177f57dd6a96a269f2aeec608516bc16e0 (patch) | |
tree | a7bca1a1cc88760be73f92ec18cd88ebfc2b6ccb /lib/libkse | |
parent | c6f2aed1029befe1f0e3d8a355ef7fa7500a39b3 (diff) | |
download | src-c33f8c177f57dd6a96a269f2aeec608516bc16e0.tar.gz src-c33f8c177f57dd6a96a269f2aeec608516bc16e0.zip |
Really set the flags for a private mutex (used by libc/libc_r).
Notes
Notes:
svn path=/head/; revision=73057
Diffstat (limited to 'lib/libkse')
-rw-r--r-- | lib/libkse/thread/thr_mutex.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/libkse/thread/thr_mutex.c b/lib/libkse/thread/thr_mutex.c index 1c72b7b4b1c4..27377f3bf408 100644 --- a/lib/libkse/thread/thr_mutex.c +++ b/lib/libkse/thread/thr_mutex.c @@ -125,6 +125,7 @@ _pthread_mutex_init(pthread_mutex_t * mutex, enum pthread_mutextype type; int protocol; int ceiling; + int flags; pthread_mutex_t pmutex; int ret = 0; @@ -137,6 +138,7 @@ _pthread_mutex_init(pthread_mutex_t * mutex, type = PTHREAD_MUTEX_ERRORCHECK; protocol = PTHREAD_PRIO_NONE; ceiling = PTHREAD_MAX_PRIORITY; + flags = 0; } /* Check mutex type: */ @@ -156,6 +158,7 @@ _pthread_mutex_init(pthread_mutex_t * mutex, type = (*mutex_attr)->m_type; protocol = (*mutex_attr)->m_protocol; ceiling = (*mutex_attr)->m_ceiling; + flags = (*mutex_attr)->m_flags; } /* Check no errors so far: */ @@ -164,8 +167,8 @@ _pthread_mutex_init(pthread_mutex_t * mutex, malloc(sizeof(struct pthread_mutex))) == NULL) ret = ENOMEM; else { - /* Reset the mutex flags: */ - pmutex->m_flags = 0; + /* Set the mutex flags: */ + pmutex->m_flags = flags; /* Process according to mutex type: */ switch (type) { |