mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-24 13:24:56 +08:00
Fix back-hdb test006 failures due to bad return code in hdb_dn2idl
This commit is contained in:
parent
114d0081c1
commit
99d2b7e7e9
@ -1016,6 +1016,7 @@ hdb_dn2idl_internal(
|
||||
/* The in-memory cache is in sync with the on-disk data.
|
||||
* do we have any kids?
|
||||
*/
|
||||
cx->rc = 0;
|
||||
if ( cx->ei->bei_ckids > 0 ) {
|
||||
struct apply_arg ap;
|
||||
|
||||
@ -1051,15 +1052,17 @@ saveit:
|
||||
gotit:
|
||||
if ( cx->rc == 0 ) {
|
||||
/* If eilist is NULL, cx->tmp is empty... */
|
||||
if ( cx->prefix == DN_SUBTREE_PREFIX && eilist ) {
|
||||
bdb_idl_union( cx->ids, cx->tmp );
|
||||
for (ptr = eilist; *ptr; ptr++) {
|
||||
cx->ei = *ptr;
|
||||
cx->id = cx->ei->bei_id;
|
||||
hdb_dn2idl_internal( cx );
|
||||
if ( cx->prefix == DN_SUBTREE_PREFIX ) {
|
||||
if ( eilist ) {
|
||||
bdb_idl_union( cx->ids, cx->tmp );
|
||||
for (ptr = eilist; *ptr; ptr++) {
|
||||
cx->ei = *ptr;
|
||||
cx->id = cx->ei->bei_id;
|
||||
hdb_dn2idl_internal( cx );
|
||||
}
|
||||
cx->op->o_tmpfree( eilist, cx->op->o_tmpmemctx );
|
||||
cx->rc = 0;
|
||||
}
|
||||
cx->op->o_tmpfree( eilist, cx->op->o_tmpmemctx );
|
||||
cx->rc = 0;
|
||||
} else {
|
||||
BDB_IDL_CPY( cx->ids, cx->tmp );
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user