s3:registry: when deleting the records for a key, also delete the sorted subkeys...
authorMichael Adam <obnox@samba.org>
Thu, 30 Jun 2011 12:37:49 +0000 (14:37 +0200)
committerMichael Adam <obnox@samba.org>
Thu, 30 Jun 2011 13:41:23 +0000 (15:41 +0200)
This prevents orphaned empty sorted subkeys cache records from filling the database.

Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>

Signed-off-by: Michael Adam <obnox@samba.org>
source3/registry/reg_backend_db.c

index c82ab1dc25b6519e2530a301deca51e6e5918677..2fda23895f8f6d9de503127bb0dda404612c23d5 100644 (file)
@@ -737,6 +737,14 @@ static WERROR regdb_delete_key_lists(struct db_context *db, const char *keyname)
                goto done;
        }
 
+       werr = regdb_delete_sorted_subkeys(db, keyname);
+       if (!W_ERROR_IS_OK(werr)) {
+               DEBUG(1, (__location__ " Deleting %s\\%s failed: %s\n",
+                         REG_SORTED_SUBKEYS_PREFIX, keyname,
+                         win_errstr(werr)));
+               goto done;
+       }
+
        werr = regdb_delete_subkeylist(db, keyname);
        if (!W_ERROR_IS_OK(werr)) {
                DEBUG(1, (__location__ " Deleting %s failed: %s\n",