From f5993afe2b1248a6e252bbdeb49dfcfc00ad4aac Mon Sep 17 00:00:00 2001
From: Stephan Bosch <stephan.bosch@open-xchange.com>
Date: Sun, 6 Oct 2019 17:13:02 +0200
Subject: [PATCH] plugins: imapsieve: imap-sieve-storage - Fix bug in composing
 the sorted rule array.

When no insertion point was found, it would always insert the new rule at the
beginning, rather than at the end.
---
 src/plugins/imapsieve/imap-sieve-storage.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/plugins/imapsieve/imap-sieve-storage.c b/src/plugins/imapsieve/imap-sieve-storage.c
index dfbcdceab..d9ba01dce 100644
--- a/src/plugins/imapsieve/imap-sieve-storage.c
+++ b/src/plugins/imapsieve/imap-sieve-storage.c
@@ -1100,7 +1100,7 @@ imap_sieve_mailbox_rules_match(struct mail_user *user,
 	if (rule != NULL &&
 		imap_sieve_mailbox_rule_match_cause(rule, cause)) {
 		struct imap_sieve_mailbox_rule *const *rule_idx;
-		unsigned int insert_idx = 0;
+		unsigned int insert_idx = array_count(rules);
 
 		/* Insert sorted by rule index */
 		array_foreach(rules, rule_idx) {
-- 
GitLab