mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-06 10:46:21 +08:00
fix previous commit (ITS#4861)
This commit is contained in:
parent
3776e2ed83
commit
fd1efa13d0
@ -1711,8 +1711,6 @@ retry:;
|
||||
rs->sr_err = LDAP_NO_SUCH_OBJECT;
|
||||
}
|
||||
|
||||
ber_memvfree( (void **)refs );
|
||||
|
||||
if ( ctrls != NULL ) {
|
||||
rs->sr_ctrls = ctrls;
|
||||
}
|
||||
@ -1771,6 +1769,10 @@ retry:;
|
||||
rs->sr_ref = NULL;
|
||||
}
|
||||
|
||||
if ( refs ) {
|
||||
ber_memvfree( (void **)refs );
|
||||
}
|
||||
|
||||
if ( ctrls ) {
|
||||
assert( rs->sr_ctrls != NULL );
|
||||
ldap_controls_free( ctrls );
|
||||
|
@ -158,6 +158,8 @@ ldap_back_search(
|
||||
int freetext = 0;
|
||||
int do_retry = 1, dont_retry = 0;
|
||||
LDAPControl **ctrls = NULL;
|
||||
char **references = NULL;
|
||||
|
||||
/* FIXME: shouldn't this be null? */
|
||||
const char *save_matched = rs->sr_matched;
|
||||
|
||||
@ -356,8 +358,6 @@ retry:
|
||||
}
|
||||
|
||||
} else if ( rc == LDAP_RES_SEARCH_REFERENCE ) {
|
||||
char **references = NULL;
|
||||
|
||||
do_retry = 0;
|
||||
rc = ldap_parse_reference( lc->lc_ld, res,
|
||||
&references, &rs->sr_ctrls, 1 );
|
||||
@ -398,6 +398,7 @@ retry:
|
||||
ber_memvfree( (void **)references );
|
||||
op->o_tmpfree( rs->sr_ref, op->o_tmpmemctx );
|
||||
rs->sr_ref = NULL;
|
||||
references = NULL;
|
||||
}
|
||||
|
||||
if ( rs->sr_ctrls ) {
|
||||
@ -406,7 +407,7 @@ retry:
|
||||
}
|
||||
|
||||
} else {
|
||||
char **references = NULL, *err = NULL;
|
||||
char *err = NULL;
|
||||
|
||||
rc = ldap_parse_result( lc->lc_ld, res, &rs->sr_err,
|
||||
&match.bv_val, &err,
|
||||
@ -444,7 +445,7 @@ retry:
|
||||
|
||||
for ( cnt = 0; references[ cnt ]; cnt++ ) {
|
||||
/* duplicating ...*/
|
||||
ber_str2bv( references[ cnt ], 0, 1, &rs->sr_ref[ cnt ] );
|
||||
ber_str2bv( references[ cnt ], 0, 0, &rs->sr_ref[ cnt ] );
|
||||
}
|
||||
BER_BVZERO( &rs->sr_ref[ cnt ] );
|
||||
}
|
||||
@ -460,8 +461,6 @@ retry:
|
||||
rs->sr_err = LDAP_NO_SUCH_OBJECT;
|
||||
}
|
||||
|
||||
ber_memvfree( (void **)references );
|
||||
|
||||
if ( match.bv_val != NULL ) {
|
||||
match.bv_len = strlen( match.bv_val );
|
||||
}
|
||||
@ -552,10 +551,14 @@ finish:;
|
||||
}
|
||||
|
||||
if ( rs->sr_ref ) {
|
||||
ber_bvarray_free_x( rs->sr_ref, op->o_tmpmemctx );
|
||||
op->o_tmpfree( rs->sr_ref, op->o_tmpmemctx );
|
||||
rs->sr_ref = NULL;
|
||||
}
|
||||
|
||||
if ( references ) {
|
||||
ber_memvfree( (void **)references );
|
||||
}
|
||||
|
||||
if ( attrs ) {
|
||||
ch_free( attrs );
|
||||
}
|
||||
|
@ -1056,8 +1056,6 @@ retry:;
|
||||
rs->sr_err = LDAP_NO_SUCH_OBJECT;
|
||||
}
|
||||
|
||||
ber_memvfree( (void **)refs );
|
||||
|
||||
if ( ctrls != NULL ) {
|
||||
rs->sr_ctrls = ctrls;
|
||||
}
|
||||
@ -1201,9 +1199,11 @@ retry:;
|
||||
ldap_memfree( text );
|
||||
}
|
||||
if ( rs->sr_ref ) {
|
||||
assert( refs != NULL );
|
||||
ber_memvfree( (void **)refs );
|
||||
op->o_tmpfree( rs->sr_ref, op->o_tmpmemctx );
|
||||
rs->sr_ref = NULL;
|
||||
}
|
||||
if ( refs ) {
|
||||
ber_memvfree( (void **)refs );
|
||||
}
|
||||
if ( ctrls ) {
|
||||
assert( rs->sr_ctrls != NULL );
|
||||
|
Loading…
Reference in New Issue
Block a user