From 0ec962a08b4007b41c43ed4f77c6aa75049cf49b Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Thu, 8 Apr 2004 21:45:49 +0000 Subject: [PATCH] Another bug. --- servers/slapd/mods.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/servers/slapd/mods.c b/servers/slapd/mods.c index fc540aa7f8..f4c84b4a2e 100644 --- a/servers/slapd/mods.c +++ b/servers/slapd/mods.c @@ -74,7 +74,7 @@ modify_add_values( * server (whether from LDAP or from the underlying * database). */ - for ( i=0; mod->sm_values[i].bv_val != NULL; i++ ) { + for ( i=0; mod->sm_values[i].bv_val; i++ ) { for ( j=0; a->a_vals[j].bv_val; j++ ) { int match; if( mod->sm_nvalues ) { @@ -89,7 +89,8 @@ modify_add_values( &a->a_vals[j], &mod->sm_values[i], text ); } - if( rc != LDAP_SUCCESS ) { + if( rc == LDAP_SUCCESS && match == 0 ) { + /* value already exists */ *text = textbuf; snprintf( textbuf, textlen, "modify/%s: %s: value #%d already exists", -- 2.39.5