From 88562cef0b7ccce212b4ea947b697be951b352b5 Mon Sep 17 00:00:00 2001
From: Stephan Bosch <stephan.bosch@open-xchange.com>
Date: Sat, 19 Oct 2024 23:50:08 +0200
Subject: [PATCH] plugins: doveadm-sieve: doveadm-sieve-sync - Refactor error
 handling in sieve_attribute_set_active()

---
 src/plugins/doveadm-sieve/doveadm-sieve-sync.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/plugins/doveadm-sieve/doveadm-sieve-sync.c b/src/plugins/doveadm-sieve/doveadm-sieve-sync.c
index 64c4d326e..4d8cdd5ab 100644
--- a/src/plugins/doveadm-sieve/doveadm-sieve-sync.c
+++ b/src/plugins/doveadm-sieve/doveadm-sieve-sync.c
@@ -184,14 +184,15 @@ sieve_attribute_set_active(struct mail_storage *storage,
 	scriptname++;
 
 	/* Activate specified script */
-	ret = (sieve_storage_open_script(svstorage, scriptname,
-					 &script, NULL) < 0 ?
-	       -1 : sieve_script_activate(script, last_change));
-	if (ret < 0) {
+	ret = 0;
+	if (sieve_storage_open_script(svstorage, scriptname,
+				      &script, NULL) < 0 ||
+	    sieve_script_activate(script, last_change) < 0) {
 		mail_storage_set_critical(
 			storage, "Failed to activate Sieve script '%s': %s",
 			scriptname,
 			sieve_storage_get_last_error(svstorage, NULL));
+		ret = -1;
 	}
 	sieve_script_unref(&script);
 	sieve_storage_set_modified(svstorage, last_change);
-- 
GitLab