]> git.sur5r.net Git - openldap/commitdiff
ITS#2974 fix hole array allocation
authorHoward Chu <hyc@openldap.org>
Tue, 2 Mar 2004 23:01:04 +0000 (23:01 +0000)
committerHoward Chu <hyc@openldap.org>
Tue, 2 Mar 2004 23:01:04 +0000 (23:01 +0000)
servers/slapd/back-bdb/tools.c

index 4f521b2ccf3b3b78ab46d9658cc43f606bda21b0..226866431c33e1012c903aa968d3bcf77b7963d0 100644 (file)
@@ -218,6 +218,7 @@ static int bdb_tool_next_id(
                        dnParent( &dn, &pdn );
                        e->e_nname = pdn;
                        rc = bdb_tool_next_id( op, tid, e, text, 1 );
+                       e->e_nname = dn;
                        if ( rc ) {
                                return rc;
                        }
@@ -236,7 +237,6 @@ static int bdb_tool_next_id(
 #endif
                        return rc;
                }
-               e->e_nname = dn;
                rc = bdb_dn2id_add( op, tid, ei, e );
                if ( rc ) {
                        snprintf( text->bv_val, text->bv_len, 
@@ -252,10 +252,10 @@ static int bdb_tool_next_id(
                } else if ( hole ) {
                        if ( nholes == nhmax - 1 ) {
                                if ( holes == hbuf ) {
-                                       holes = ch_malloc( nhmax * sizeof(ID) * 2 );
+                                       holes = ch_malloc( nhmax * sizeof(dn_id) * 2 );
                                        AC_MEMCPY( holes, hbuf, sizeof(hbuf) );
                                } else {
-                                       holes = ch_realloc( holes, nhmax * sizeof(ID) * 2 );
+                                       holes = ch_realloc( holes, nhmax * sizeof(dn_id) * 2 );
                                }
                                nhmax *= 2;
                        }