dovecot-2.2-pigeonhole: lib-sieve: storage: Fixed bug in synchro...

pigeonhole at rename-it.nl pigeonhole at rename-it.nl
Sun Oct 26 13:10:37 UTC 2014


details:   http://hg.rename-it.nl/dovecot-2.2-pigeonhole/rev/79988ab8b2df
changeset: 1937:79988ab8b2df
user:      Stephan Bosch <stephan at rename-it.nl>
date:      Sun Oct 26 14:10:27 2014 +0100
description:
lib-sieve: storage: Fixed bug in synchronization intialization.
Storage flag checks were bogus.

diffstat:

 src/lib-sieve/sieve-storage-sync.c |  16 ++++++++++------
 1 files changed, 10 insertions(+), 6 deletions(-)

diffs (35 lines):

diff -r 15b2910b145c -r 79988ab8b2df src/lib-sieve/sieve-storage-sync.c
--- a/src/lib-sieve/sieve-storage-sync.c	Sat Oct 25 21:51:16 2014 +0200
+++ b/src/lib-sieve/sieve-storage-sync.c	Sun Oct 26 14:10:27 2014 +0100
@@ -26,21 +26,25 @@
 {
 	struct mail_namespace *ns;
 	struct mailbox *box;
-	enum mailbox_flags flags = MAILBOX_FLAG_IGNORE_ACLS;
+	enum sieve_storage_flags sflags = storage->flags;
+	enum mailbox_flags mflags = MAILBOX_FLAG_IGNORE_ACLS;
 	enum mail_error error;
-		
-	if ( (flags & SIEVE_STORAGE_FLAG_SYNCHRONIZING) == 0 &&
-		(flags & SIEVE_STORAGE_FLAG_READWRITE) == 0 )
+
+	if ( (sflags & SIEVE_STORAGE_FLAG_SYNCHRONIZING) == 0 &&
+		(sflags & SIEVE_STORAGE_FLAG_READWRITE) == 0 )
 		return 0;
 
 	if ( !storage->allows_synchronization ) {
-		if ( (flags & SIEVE_STORAGE_FLAG_SYNCHRONIZING) != 0 )
+		if ( (sflags & SIEVE_STORAGE_FLAG_SYNCHRONIZING) != 0 )
 			return -1;
 		return 0;
 	}
 
+	sieve_storage_sys_debug(storage, "sync: "
+		"Opening INBOX for attribute modifications");
+
 	ns = mail_namespace_find_inbox(user->namespaces);
-	storage->sync_inbox = box = mailbox_alloc(ns->list, "INBOX", flags);
+	storage->sync_inbox = box = mailbox_alloc(ns->list, "INBOX", mflags);
 	if (mailbox_open(box) == 0)
 		return 0;
 


More information about the dovecot-cvs mailing list