]> git.sur5r.net Git - openldap/commitdiff
ITS#2348: cont_alloc/cont_free cleanup in idl_insert_key
authorHoward Chu <hyc@openldap.org>
Wed, 5 Mar 2003 23:10:32 +0000 (23:10 +0000)
committerHoward Chu <hyc@openldap.org>
Wed, 5 Mar 2003 23:10:32 +0000 (23:10 +0000)
servers/slapd/back-ldbm/idl.c

index d879f568a6828e9acc088520ee32e71e7908f2b4..f5cf6fee58e78474eccdba7ffca6b198a9552359 100644 (file)
@@ -630,7 +630,6 @@ idl_insert_key(
                if ( !first && (unsigned long)(i + 1) < ID_BLOCK_NIDS(idl) ) {
 #endif
                        /* read it in */
-                       cont_alloc( &k2, &key );
                        cont_id( &k2, ID_BLOCK_ID(idl, i + 1) );
                        if ( (tmp2 = idl_fetch_one( be, db, k2 )) == NULL ) {
 #ifdef NEW_LOGGING
@@ -643,7 +642,6 @@ idl_insert_key(
 #endif
 
                                /* split the original block */
-                               cont_free( &k2 );
                                goto split;
                        }
 
@@ -707,6 +705,7 @@ idl_insert_key(
 
                                idl_free( tmp );
                                idl_free( tmp2 );
+                               cont_free( &k2 );
                                idl_free( idl );
                                return( 0 );