From c6bc8e9f8e01648d28925f94bdd5817ef71f2ab0 Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan.bosch@open-xchange.com> Date: Wed, 21 Feb 2024 03:29:09 +0100 Subject: [PATCH] lib-sieve: sieve - Make sieve_deinit(NULL) a no-op --- src/lib-sieve/sieve.c | 5 ++++- src/plugins/imap-filter-sieve/imap-filter-sieve.c | 3 +-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/lib-sieve/sieve.c b/src/lib-sieve/sieve.c index 9c09c60fd..3ca4393c0 100644 --- a/src/lib-sieve/sieve.c +++ b/src/lib-sieve/sieve.c @@ -136,6 +136,10 @@ void sieve_deinit(struct sieve_instance **_svinst) { struct sieve_instance *svinst = *_svinst; + if (svinst == NULL) + return; + *_svinst = NULL; + sieve_plugins_unload(svinst); sieve_storages_deinit(svinst); sieve_extensions_deinit(svinst); @@ -144,7 +148,6 @@ void sieve_deinit(struct sieve_instance **_svinst) event_unref(&svinst->event); pool_unref(&(svinst)->pool); - *_svinst = NULL; } void sieve_set_extensions(struct sieve_instance *svinst, const char *extensions) diff --git a/src/plugins/imap-filter-sieve/imap-filter-sieve.c b/src/plugins/imap-filter-sieve/imap-filter-sieve.c index bdfa1f9dc..9230ae720 100644 --- a/src/plugins/imap-filter-sieve/imap-filter-sieve.c +++ b/src/plugins/imap-filter-sieve/imap-filter-sieve.c @@ -1127,8 +1127,7 @@ static void imap_filter_sieve_user_deinit(struct mail_user *user) sieve_storage_unref(&ifsuser->storage); if (ifsuser->global_storage != NULL) sieve_storage_unref(&ifsuser->global_storage); - if (ifsuser->svinst != NULL) - sieve_deinit(&ifsuser->svinst); + sieve_deinit(&ifsuser->svinst); if (ifsuser->dup_db != NULL) mail_duplicate_db_deinit(&ifsuser->dup_db); -- GitLab