From: Aki Tuomi Date: Fri, 10 Nov 2023 11:33:33 +0000 (+0200) Subject: plugins: acl - Make some deinits NULL no-op X-Git-Tag: 2.4.1~1172 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3f4bb6f9ad6433c3516c5e18752ce362300bb6d4;p=thirdparty%2Fdovecot%2Fcore.git plugins: acl - Make some deinits NULL no-op --- diff --git a/src/plugins/acl/acl-api.c b/src/plugins/acl/acl-api.c index 0badd70aac..684ae5989a 100644 --- a/src/plugins/acl/acl-api.c +++ b/src/plugins/acl/acl-api.c @@ -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); } diff --git a/src/plugins/acl/acl-backend.c b/src/plugins/acl/acl-backend.c index 90c1f98d0f..377cb6ba1d 100644 --- a/src/plugins/acl/acl-backend.c +++ b/src/plugins/acl/acl-backend.c @@ -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); diff --git a/src/plugins/acl/acl-cache.c b/src/plugins/acl/acl-cache.c index 38c33676fd..aa820bd7c8 100644 --- a/src/plugins/acl/acl-cache.c +++ b/src/plugins/acl/acl-cache.c @@ -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); diff --git a/src/plugins/acl/acl-global-file.c b/src/plugins/acl/acl-global-file.c index b109b2ac53..ba5c10ba16 100644 --- a/src/plugins/acl/acl-global-file.c +++ b/src/plugins/acl/acl-global-file.c @@ -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); diff --git a/src/plugins/acl/acl-mailbox-list.c b/src/plugins/acl/acl-mailbox-list.c index 5db9da89b6..d888b8cd4a 100644 --- a/src/plugins/acl/acl-mailbox-list.c +++ b/src/plugins/acl/acl-mailbox-list.c @@ -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); } diff --git a/src/plugins/acl/acl-mailbox.c b/src/plugins/acl/acl-mailbox.c index 18a136eefa..2a6e788eb1 100644 --- a/src/plugins/acl/acl-mailbox.c +++ b/src/plugins/acl/acl-mailbox.c @@ -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); }