From: Howard Chu Date: Tue, 23 Sep 2003 17:14:01 +0000 (+0000) Subject: Plug a leak. X-Git-Tag: OPENLDAP_REL_ENG_2_1_MP~666 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=772ce3b911a0a5b0e2511ffb919ba258dba5d0a7;p=openldap Plug a leak. --- diff --git a/servers/slapd/back-bdb/modrdn.c b/servers/slapd/back-bdb/modrdn.c index fe4d2d3ffa..93150525f7 100644 --- a/servers/slapd/back-bdb/modrdn.c +++ b/servers/slapd/back-bdb/modrdn.c @@ -92,7 +92,6 @@ retry: /* transaction retry */ #else Debug( LDAP_DEBUG_TRACE, "==>bdb_modrdn: retrying...\n", 0, 0, 0 ); #endif - pm_list = LDAP_LIST_FIRST(&op->o_pm_list); while ( pm_list != NULL ) { LDAP_LIST_REMOVE ( pm_list, ps_link ); @@ -1052,9 +1051,15 @@ done: Modifications *tmp; for (; mod; mod=tmp ) { tmp = mod->sml_next; + /* slap_modrdn2mods does things one way, + * slap_mods_opattrs does it differently + */ + if ( mod->sml_op != SLAP_MOD_SOFTADD && + mod->sml_op != LDAP_MOD_DELETE ) break; if ( mod->sml_nvalues ) free( mod->sml_nvalues[0].bv_val ); free( mod ); } + slap_mods_free( mod ); } /* LDAP v3 Support */