mirror of
https://git.openldap.org/openldap/openldap.git
synced 2026-01-28 01:29:18 -05:00
More for ITS#6177
This commit is contained in:
parent
3a918c03b6
commit
53f8b761f1
2 changed files with 15 additions and 12 deletions
|
|
@ -979,6 +979,9 @@ load1:
|
|||
if ( (*eip)->bei_state & CACHE_ENTRY_DELETED ) {
|
||||
rc = DB_NOTFOUND;
|
||||
bdb_cache_entry_db_unlock( bdb, lock );
|
||||
bdb_cache_entryinfo_lock( *eip );
|
||||
(*eip)->bei_finders--;
|
||||
bdb_cache_entryinfo_unlock( *eip );
|
||||
} else if ( rc == 0 ) {
|
||||
if ( load ) {
|
||||
if ( !ep) {
|
||||
|
|
|
|||
|
|
@ -1156,18 +1156,18 @@ gotit:
|
|||
if ( bdb_cache_find_id( cx->op, cx->txn, cx->id, &cx->ei,
|
||||
ID_NOENTRY, NULL ))
|
||||
continue;
|
||||
if ( !cx->ei ||
|
||||
( cx->ei->bei_state & CACHE_ENTRY_NO_KIDS ))
|
||||
continue;
|
||||
|
||||
ei2 = cx->ei;
|
||||
BDB_ID2DISK( cx->id, &cx->nid );
|
||||
hdb_dn2idl_internal( cx );
|
||||
if ( !BDB_IDL_IS_ZERO( cx->tmp ))
|
||||
nokids = 0;
|
||||
bdb_cache_entryinfo_lock( ei2 );
|
||||
ei2->bei_finders--;
|
||||
bdb_cache_entryinfo_unlock( ei2 );
|
||||
if ( cx->ei ) {
|
||||
ei2 = cx->ei;
|
||||
if ( !( ei2->bei_state & CACHE_ENTRY_NO_KIDS )) {
|
||||
BDB_ID2DISK( cx->id, &cx->nid );
|
||||
hdb_dn2idl_internal( cx );
|
||||
if ( !BDB_IDL_IS_ZERO( cx->tmp ))
|
||||
nokids = 0;
|
||||
}
|
||||
bdb_cache_entryinfo_lock( ei2 );
|
||||
ei2->bei_finders--;
|
||||
bdb_cache_entryinfo_unlock( ei2 );
|
||||
}
|
||||
}
|
||||
cx->depth--;
|
||||
cx->op->o_tmpfree( save, cx->op->o_tmpmemctx );
|
||||
|
|
|
|||
Loading…
Reference in a new issue