diff options
Diffstat (limited to 'nscd/servicescache.c')
-rw-r--r-- | nscd/servicescache.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/nscd/servicescache.c b/nscd/servicescache.c index c965c972a3..dc98d3005a 100644 --- a/nscd/servicescache.c +++ b/nscd/servicescache.c @@ -136,6 +136,8 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, (void) cache_add (req->type, &dataset->strdata, req->key_len, &dataset->head, true, db, owner, he == NULL); + pthread_rwlock_unlock (&db->lock); + /* Mark the old entry as obsolete. */ if (dh != NULL) dh->usable = false; @@ -315,6 +317,8 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, (void) cache_add (req->type, key_copy, req->key_len, &dataset->head, true, db, owner, he == NULL); + + pthread_rwlock_unlock (&db->lock); } } |