From: Howard Chu Date: Sat, 10 May 2003 23:58:11 +0000 (+0000) Subject: ITS#2470 - mark entry in-use before release cache locks X-Git-Tag: OPENLDAP_REL_ENG_2_1_20~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c96384086b31bb9e2d9592a08781e32c6bad45eb;p=thirdparty%2Fopenldap.git ITS#2470 - mark entry in-use before release cache locks --- diff --git a/servers/slapd/back-bdb/cache.c b/servers/slapd/back-bdb/cache.c index 7bbabf8457..ad5498c29e 100644 --- a/servers/slapd/back-bdb/cache.c +++ b/servers/slapd/back-bdb/cache.c @@ -952,6 +952,9 @@ try_again: goto try_again; } + /* Mark entry in-use */ + BEI(ep)->bei_refcnt++; + /* free cache read lock */ ldap_pvt_thread_rdwr_runlock( &cache->c_rwlock ); /* set lru mutex */ @@ -959,8 +962,6 @@ try_again: /* lru */ LRU_DELETE( cache, ep ); LRU_ADD( cache, ep ); - - BEI(ep)->bei_refcnt++; /* free lru mutex */ ldap_pvt_thread_mutex_unlock( &cache->lru_mutex );