ldb:"ldb_dn_remove_base_components" - use an "unsigned int" counter
authorMatthias Dieter Wallnöfer <mdw@samba.org>
Sat, 16 Oct 2010 13:04:57 +0000 (15:04 +0200)
committerMatthias Dieter Wallnöfer <mdw@samba.org>
Sat, 16 Oct 2010 13:04:57 +0000 (15:04 +0200)
source4/lib/ldb/common/ldb_dn.c

index 2b640687b17f74333c6ef0b447e9d76263d7e8e6..cb680e2e9332a55b1dd7435c8b4d9254970bda7d 100644 (file)
@@ -1600,7 +1600,7 @@ bool ldb_dn_add_child_fmt(struct ldb_dn *dn, const char *child_fmt, ...)
 
 bool ldb_dn_remove_base_components(struct ldb_dn *dn, unsigned int num)
 {
-       long long int i;
+       unsigned int i;
 
        if ( ! ldb_dn_validate(dn)) {
                return false;
@@ -1611,11 +1611,11 @@ bool ldb_dn_remove_base_components(struct ldb_dn *dn, unsigned int num)
        }
 
        /* free components */
-       for (i = num; i > 0; i--) {
-               LDB_FREE(dn->components[dn->comp_num - i].name);
-               LDB_FREE(dn->components[dn->comp_num - i].value.data);
-               LDB_FREE(dn->components[dn->comp_num - i].cf_name);
-               LDB_FREE(dn->components[dn->comp_num - i].cf_value.data);
+       for (i = dn->comp_num - num; i < dn->comp_num; i++) {
+               LDB_FREE(dn->components[i].name);
+               LDB_FREE(dn->components[i].value.data);
+               LDB_FREE(dn->components[i].cf_name);
+               LDB_FREE(dn->components[i].cf_value.data);
        }
 
        dn->comp_num -= num;