diff options
author | Peter Wemm <peter@FreeBSD.org> | 2013-07-03 18:35:21 +0000 |
---|---|---|
committer | Peter Wemm <peter@FreeBSD.org> | 2013-07-03 18:35:21 +0000 |
commit | ff0b75b897dde9a8455f0c199af9a75e424c38cc (patch) | |
tree | f1e6c66ef88c635fd69918eafab29a785ec064de /lib/libc/iconv/citrus_csmapper.c | |
parent | 7900abff04765b35813cd9bab7bfa53a458d76c5 (diff) | |
download | src-ff0b75b897dde9a8455f0c199af9a75e424c38cc.tar.gz src-ff0b75b897dde9a8455f0c199af9a75e424c38cc.zip |
Make it clear that there are three separate internal locks.
Notes
Notes:
svn path=/head/; revision=252584
Diffstat (limited to 'lib/libc/iconv/citrus_csmapper.c')
-rw-r--r-- | lib/libc/iconv/citrus_csmapper.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/libc/iconv/citrus_csmapper.c b/lib/libc/iconv/citrus_csmapper.c index 5e0a01ad8a90..e2d10d5a4ba7 100644 --- a/lib/libc/iconv/citrus_csmapper.c +++ b/lib/libc/iconv/citrus_csmapper.c @@ -58,6 +58,8 @@ static struct _citrus_mapper_area *maparea = NULL; +static pthread_rwlock_t ma_lock = PTHREAD_RWLOCK_INITIALIZER; + #define CS_ALIAS _PATH_CSMAPPER "/charset.alias" #define CS_PIVOT _PATH_CSMAPPER "/charset.pivot" @@ -314,7 +316,7 @@ get_none(struct _citrus_mapper_area *__restrict ma, { int ret; - WLOCK; + WLOCK(&ma_lock); if (csm_none) { *rcsm = csm_none; ret = 0; @@ -329,7 +331,7 @@ get_none(struct _citrus_mapper_area *__restrict ma, *rcsm = csm_none; ret = 0; quit: - UNLOCK; + UNLOCK(&ma_lock); return (ret); } |