From 6aab531d66ae25a2c594e7dfda2cdf2d5933c047 Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Wed, 12 Mar 2003 13:05:19 +0000 Subject: [PATCH] #ifndef SLAP_NVALUES asserted berval was leaked --- servers/slapd/mods.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/servers/slapd/mods.c b/servers/slapd/mods.c index 946aa1b2a7..73aac72e39 100644 --- a/servers/slapd/mods.c +++ b/servers/slapd/mods.c @@ -416,10 +416,9 @@ modify_add_values( if ( mod->sm_bvalues[1].bv_val == 0 ) { if ( a != NULL ) { - struct berval asserted; int i; - #ifndef SLAP_NVALUES + struct berval asserted; rc = value_normalize( mod->sm_desc, SLAP_MR_EQUALITY, &mod->sm_bvalues[ 0 ], &asserted, text ); if ( rc != LDAP_SUCCESS ) { @@ -463,7 +462,9 @@ modify_add_values( matched++; continue; } +#ifndef SLAP_NVALUES free( asserted.bv_val ); +#endif *text = textbuf; snprintf( textbuf, textlen, "modify/%s: %s: value #0 already exists", @@ -471,6 +472,9 @@ modify_add_values( return LDAP_TYPE_OR_VALUE_EXISTS; } } +#ifndef SLAP_NVALUES + free( asserted.bv_val ); +#endif if ( permissive && matched == i ) { /* values already exist; do nothing */ return LDAP_SUCCESS;