[dovecot-cvs] dovecot/src/lib-storage/index/maildir maildir-sync.c, 1.72, 1.73

cras at dovecot.org cras at dovecot.org
Sat Mar 25 13:09:19 EET 2006


Update of /var/lib/cvs/dovecot/src/lib-storage/index/maildir
In directory talvi:/tmp/cvs-serv12312/lib-storage/index/maildir

Modified Files:
	maildir-sync.c 
Log Message:
Keep \Seen flags privately only in indexes with shared mailboxes.



Index: maildir-sync.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-storage/index/maildir/maildir-sync.c,v
retrieving revision 1.72
retrieving revision 1.73
diff -u -d -r1.72 -r1.73
--- maildir-sync.c	14 Jan 2006 18:47:50 -0000	1.72
+++ maildir-sync.c	25 Mar 2006 11:09:17 -0000	1.73
@@ -895,6 +895,10 @@
 		maildir_filename_get_flags(sync_ctx->keywords_sync_ctx,
 					   filename, &flags, &keywords);
 
+		/* the private flags are kept only in indexes. don't use them
+		   at all even for newly seen mails */
+		flags &= ~mbox->private_flags_mask;
+
 		if ((uflags & MAILDIR_UIDLIST_REC_FLAG_RECENT) != 0 &&
 		    (uflags & MAILDIR_UIDLIST_REC_FLAG_NEW_DIR) != 0 &&
 		    (uflags & MAILDIR_UIDLIST_REC_FLAG_MOVED) == 0) {
@@ -1003,6 +1007,9 @@
 			continue;
 		}
 
+		/* the private flags are stored only in indexes, keep them */
+		flags |= rec->flags & mbox->private_flags_mask;
+
 		if ((rec->flags & MAIL_RECENT) != 0) {
 			index_mailbox_set_recent(&mbox->ibox, seq);
 			if (mbox->ibox.keep_recent) {



More information about the dovecot-cvs mailing list