From: Howard Chu Date: Wed, 2 Nov 2011 16:25:45 +0000 (-0700) Subject: Revert "ITS#6981 don't free entries prematurely" X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=49c6ddf99c32e510e0cffe7513429c37c90fa4b0;p=openldap Revert "ITS#6981 don't free entries prematurely" This reverts commit 877ebdf5ef7c40e9d8aeba3894cd07f95bc721d2. --- diff --git a/servers/slapd/result.c b/servers/slapd/result.c index 8b173d4524..1e8d406223 100644 --- a/servers/slapd/result.c +++ b/servers/slapd/result.c @@ -1414,8 +1414,7 @@ slap_send_search_entry( Operation *op, SlapReply *rs ) Statslog( LDAP_DEBUG_STATS2, "%s ENTRY dn=\"%s\"\n", op->o_log_prefix, rs->sr_entry->e_nname.bv_val, 0, 0, 0 ); - if ( rs->sr_flags & REP_ENTRY_MUSTRELEASE ) - rs_flush_entry( op, rs, NULL ); + rs_flush_entry( op, rs, NULL ); if ( op->o_res_ber == NULL ) { bytes = send_ldap_ber( op, ber ); @@ -1581,8 +1580,7 @@ slap_send_search_reference( Operation *op, SlapReply *rs ) } rc = 0; - if ( rs->sr_flags & REP_ENTRY_MUSTRELEASE ) - rs_flush_entry( op, rs, NULL ); + rs_flush_entry( op, rs, NULL ); #ifdef LDAP_CONNECTIONLESS if (!op->o_conn || op->o_conn->c_is_udp == 0) { @@ -1618,13 +1616,15 @@ slap_send_search_reference( Operation *op, SlapReply *rs ) Debug( LDAP_DEBUG_TRACE, "<= send_search_reference\n", 0, 0, 0 ); + if ( 0 ) { rel: + rs_flush_entry( op, rs, NULL ); + } + if ( op->o_callback ) { (void)slap_cleanup_play( op, rs ); } - rs_flush_entry( op, rs, NULL ); - if ( rs->sr_flags & REP_CTRLS_MUSTBEFREED ) { rs->sr_flags ^= REP_CTRLS_MUSTBEFREED; /* paranoia */ if ( rs->sr_ctrls ) {