From 603f214ba9fc27c2e9ee2d8f0385bf53abd0cbca Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan.bosch@open-xchange.com> Date: Sat, 13 Jul 2024 01:10:24 +0200 Subject: [PATCH] lib-sieve: sieve-storage - Use int for sieve_script_sequence_create() status result --- src/lib-sieve/sieve-script.c | 16 ++++++++-------- src/lib-sieve/sieve-script.h | 8 ++++---- src/plugins/lda-sieve/lda-sieve-plugin.c | 4 ++-- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/lib-sieve/sieve-script.c b/src/lib-sieve/sieve-script.c index 8b355a963..008bfa647 100644 --- a/src/lib-sieve/sieve-script.c +++ b/src/lib-sieve/sieve-script.c @@ -863,15 +863,15 @@ void sieve_script_sequence_init(struct sieve_script_sequence *sseq, sieve_storage_ref(storage); } -struct sieve_script_sequence * -sieve_script_sequence_create(struct sieve_instance *svinst, - const char *location, - enum sieve_error *error_code_r) +int sieve_script_sequence_create(struct sieve_instance *svinst, + const char *location, + struct sieve_script_sequence **sseq_r, + enum sieve_error *error_code_r) { struct sieve_storage *storage; - struct sieve_script_sequence *sseq; enum sieve_error error_code; + *sseq_r = NULL; if (error_code_r != NULL) *error_code_r = SIEVE_ERROR_NONE; else @@ -879,12 +879,12 @@ sieve_script_sequence_create(struct sieve_instance *svinst, if (sieve_storage_create(svinst, location, 0, &storage, error_code_r) < 0) - return NULL; + return -1; - sseq = sieve_storage_get_script_sequence(storage, error_code_r); + *sseq_r = sieve_storage_get_script_sequence(storage, error_code_r); sieve_storage_unref(&storage); - return sseq; + return 0; } struct sieve_script * diff --git a/src/lib-sieve/sieve-script.h b/src/lib-sieve/sieve-script.h index 952ea1bdc..24d9759ea 100644 --- a/src/lib-sieve/sieve-script.h +++ b/src/lib-sieve/sieve-script.h @@ -152,10 +152,10 @@ const char *sieve_script_get_last_error_lcase(struct sieve_script *script); struct sieve_script_sequence; -struct sieve_script_sequence * -sieve_script_sequence_create(struct sieve_instance *svinst, - const char *location, - enum sieve_error *error_code_r); +int sieve_script_sequence_create(struct sieve_instance *svinst, + const char *location, + struct sieve_script_sequence **sseq_r, + enum sieve_error *error_code_r); struct sieve_script * sieve_script_sequence_next(struct sieve_script_sequence *sseq, enum sieve_error *error_code_r); diff --git a/src/plugins/lda-sieve/lda-sieve-plugin.c b/src/plugins/lda-sieve/lda-sieve-plugin.c index 54736a5b8..e369468bc 100644 --- a/src/plugins/lda-sieve/lda-sieve-plugin.c +++ b/src/plugins/lda-sieve/lda-sieve-plugin.c @@ -289,8 +289,8 @@ lda_sieve_multiscript_get_scripts(struct sieve_instance *svinst, bool finished = FALSE; int ret = 1; - sseq = sieve_script_sequence_create(svinst, location, error_code_r); - if (sseq == NULL) + if (sieve_script_sequence_create(svinst, location, + &sseq, error_code_r) < 0) return (*error_code_r == SIEVE_ERROR_NOT_FOUND ? 0 : -1); while (ret > 0 && !finished) { -- GitLab