]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
plugins: acl - Make some deinits NULL no-op
authorAki Tuomi <aki.tuomi@open-xchange.com>
Fri, 10 Nov 2023 11:33:33 +0000 (13:33 +0200)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Wed, 12 Feb 2025 10:34:11 +0000 (12:34 +0200)
src/plugins/acl/acl-api.c
src/plugins/acl/acl-backend.c
src/plugins/acl/acl-cache.c
src/plugins/acl/acl-global-file.c
src/plugins/acl/acl-mailbox-list.c
src/plugins/acl/acl-mailbox.c

index 0badd70aace23b9ef4ec1961ee55b3e09581acf7..684ae5989aa6c9deea9b42a2e11389af09bbd4ca 100644 (file)
@@ -47,6 +47,8 @@ void acl_object_deinit(struct acl_object **_aclobj)
 {
        struct acl_object *aclobj = *_aclobj;
 
+       if (aclobj == NULL)
+               return;
        *_aclobj = NULL;
        aclobj->backend->v.object_deinit(aclobj);
 }
index 90c1f98d0f9e8e4d6d39987444db89fd7dc03d93..377cb6ba1d98dbc1a8716bdc0e3614acf17f721f 100644 (file)
@@ -98,10 +98,11 @@ void acl_backend_deinit(struct acl_backend **_backend)
 {
        struct acl_backend *backend = *_backend;
 
+       if (backend == NULL)
+               return;
        *_backend = NULL;
 
-       if (backend->default_aclobj != NULL)
-               acl_object_deinit(&backend->default_aclobj);
+       acl_object_deinit(&backend->default_aclobj);
        acl_cache_deinit(&backend->cache);
        event_unref(&backend->event);
        backend->v.deinit(backend);
index 38c33676fdd28b28b429c0558aec98964a5c8eda..aa820bd7c8e621dda56ad46d30d79f03752966ac 100644 (file)
@@ -57,6 +57,8 @@ void acl_cache_deinit(struct acl_cache **_cache)
 {
        struct acl_cache *cache = *_cache;
 
+       if (cache == NULL)
+               return;
        *_cache = NULL;
 
        acl_cache_flush_all(cache);
index b109b2ac534a3eef1eb71b48775b5dbd22cec77e..ba5c10ba16065b52111cc560c3a74cd34f6443c7 100644 (file)
@@ -52,6 +52,8 @@ void acl_global_file_deinit(struct acl_global_file **_file)
 {
        struct acl_global_file *file = *_file;
 
+       if (file == NULL)
+               return;
        *_file = NULL;
 
        array_free(&file->rights);
index 5db9da89b6eb70aaca0802875798731629025195..d888b8cd4afdbc4814a1c6aa558511e0c2733120 100644 (file)
@@ -509,8 +509,7 @@ static void acl_mailbox_list_deinit(struct mailbox_list *list)
 {
        struct acl_mailbox_list *alist = ACL_LIST_CONTEXT_REQUIRE(list);
 
-       if (alist->rights.backend != NULL)
-               acl_backend_deinit(&alist->rights.backend);
+       acl_backend_deinit(&alist->rights.backend);
        alist->module_ctx.super.deinit(list);
 }
 
index 18a136eefaa8e59601a5d4e7d1f0b2b0e592533b..2a6e788eb19f44e0b367386b23152aa8047dc76f 100644 (file)
@@ -89,8 +89,7 @@ static void acl_mailbox_free(struct mailbox *box)
 {
        struct acl_mailbox *abox = ACL_CONTEXT_REQUIRE(box);
 
-       if (abox->aclobj != NULL)
-               acl_object_deinit(&abox->aclobj);
+       acl_object_deinit(&abox->aclobj);
        abox->module_ctx.super.free(box);
 }