From: Kurt Zeilenga Date: Thu, 26 Aug 1999 01:48:47 +0000 (+0000) Subject: Backout delete before add rdn index change. X-Git-Tag: TWEB_OL_BASE~106 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=a40b1f3126c74d860acdb3689568f3960100c954;p=openldap Backout delete before add rdn index change. --- diff --git a/servers/slapd/back-ldbm/modrdn.c b/servers/slapd/back-ldbm/modrdn.c index 980498277d..4120263fa4 100644 --- a/servers/slapd/back-ldbm/modrdn.c +++ b/servers/slapd/back-ldbm/modrdn.c @@ -358,10 +358,10 @@ ldbm_back_modrdn( add_bv.bv_val = new_rdn_val; add_bv.bv_len = strlen(new_rdn_val); - mod[1].ml_type = new_rdn_type; - mod[1].ml_bvalues = add_bvals; - mod[1].ml_op = LDAP_MOD_SOFTADD; - mod[1].ml_next = NULL; + mod[0].ml_type = new_rdn_type; + mod[0].ml_bvalues = add_bvals; + mod[0].ml_op = LDAP_MOD_SOFTADD; + mod[0].ml_next = NULL; /* Remove old rdn value if required */ @@ -390,10 +390,11 @@ ldbm_back_modrdn( /* No need to normalize old_rdn_type, delete_values() * does that for us */ - mod[0].ml_type = old_rdn_type; - mod[0].ml_bvalues = del_bvals; - mod[0].ml_op = LDAP_MOD_DELETE; mod[0].ml_next = &mod[1]; + mod[1].ml_type = old_rdn_type; + mod[1].ml_bvalues = del_bvals; + mod[1].ml_op = LDAP_MOD_DELETE; + mod[1].ml_next = NULL; Debug( LDAP_DEBUG_TRACE, "ldbm_back_modrdn: removing old_rdn_val=%s\n", @@ -438,8 +439,8 @@ ldbm_back_modrdn( /* modify memory copy of entry */ - if ( ldbm_modify_internal( be, conn, op, dn, - &mod[deleteoldrdn ? 0 : 1], e ) != 0 ) { + if ( ldbm_modify_internal( be, conn, op, dn, &mod[0], e ) + != 0 ) { goto return_results; }