From 26d0410de0b969568d57f1c92f4fb2ee9cbaed2b Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Thu, 17 Jan 2002 23:45:40 +0000 Subject: [PATCH] Cleanup while loops in dn2id_add/delete --- servers/slapd/back-bdb/dn2id.c | 36 +++++++++++++--------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/servers/slapd/back-bdb/dn2id.c b/servers/slapd/back-bdb/dn2id.c index ab8f23f76d..c05dcae223 100644 --- a/servers/slapd/back-bdb/dn2id.c +++ b/servers/slapd/back-bdb/dn2id.c @@ -51,7 +51,6 @@ bdb_dn2id_add( goto done; } - pdn = NULL; if( !be_issuffix( be, ptr )) { buf[0] = DN_SUBTREE_PREFIX; rc = bdb_idl_insert_key( be, db, txn, &key, e->e_id ); @@ -73,35 +72,30 @@ bdb_dn2id_add( key.size -= pdn - ptr; pdn[-1] = DN_ONE_PREFIX; key.data = pdn - 1; + ptr = pdn; rc = bdb_idl_insert_key( be, db, txn, &key, e->e_id ); if( rc != 0 ) { Debug( LDAP_DEBUG_ANY, "=> bdb_dn2id_add: parent (%s) insert failed: %d\n", - pdn, rc, 0 ); + ptr, rc, 0 ); goto done; } } - while( pdn != NULL ) { - if ( be_issuffix( be, pdn )) - break; - pdn[-1] = DN_SUBTREE_PREFIX; + while( !be_issuffix( be, ptr )) { + ptr[-1] = DN_SUBTREE_PREFIX; rc = bdb_idl_insert_key( be, db, txn, &key, e->e_id ); if( rc != 0 ) { Debug( LDAP_DEBUG_ANY, "=> bdb_dn2id_add: subtree (%s) insert failed: %d\n", - pdn, rc, 0 ); + ptr, rc, 0 ); break; } - ptr = pdn; - if ( be_issuffix( be, pdn ) ) { - break; - } - rc = dnParent( pdn, &pdn ); + rc = dnParent( ptr, &pdn ); if ( rc != LDAP_SUCCESS ) { Debug( LDAP_DEBUG_ANY, "=> bdb_dn2id_add: dnParent(\"%s\") failed\n", @@ -111,6 +105,7 @@ bdb_dn2id_add( key.size -= pdn - ptr; key.data = pdn - 1; + ptr = pdn; } done: @@ -152,7 +147,6 @@ bdb_dn2id_delete( goto done; } - pdn = NULL; if( !be_issuffix( be, ptr )) { buf[0] = DN_SUBTREE_PREFIX; rc = bdb_idl_delete_key( be, db, txn, &key, e->e_id ); @@ -174,32 +168,29 @@ bdb_dn2id_delete( key.size -= pdn - ptr; pdn[-1] = DN_ONE_PREFIX; key.data = pdn - 1; + ptr = pdn; rc = bdb_idl_delete_key( be, db, txn, &key, e->e_id ); if( rc != 0 ) { Debug( LDAP_DEBUG_ANY, "=> bdb_dn2id_delete: parent (%s) delete failed: %d\n", - pdn, rc, 0 ); + ptr, rc, 0 ); goto done; } } - while( pdn != NULL ) { - if ( be_issuffix( be, pdn )) - break; - - pdn[-1] = DN_SUBTREE_PREFIX; + while( !be_issuffix( be, ptr )) { + ptr[-1] = DN_SUBTREE_PREFIX; rc = bdb_idl_delete_key( be, db, txn, &key, e->e_id ); if( rc != 0 ) { Debug( LDAP_DEBUG_ANY, "=> bdb_dn2id_delete: subtree (%s) delete failed: %d\n", - pdn, rc, 0 ); + ptr, rc, 0 ); goto done; } - ptr = pdn; - rc = dnParent( pdn, &pdn ); + rc = dnParent( ptr, &pdn ); if ( rc != LDAP_SUCCESS ) { Debug( LDAP_DEBUG_ANY, "=> bdb_dn2id_delete: dnParent(\"%s\") failed\n", @@ -209,6 +200,7 @@ bdb_dn2id_delete( key.size -= pdn - ptr; key.data = pdn - 1; + ptr = pdn; } done: -- 2.39.5