[dovecot-cvs] dovecot/src/lib-storage/index index-update-flags.c,1.25,1.26

cras at procontrol.fi cras at procontrol.fi
Mon Aug 11 03:56:25 EEST 2003


Update of /home/cvs/dovecot/src/lib-storage/index
In directory danu:/tmp/cvs-serv17929/lib-storage/index

Modified Files:
	index-update-flags.c 
Log Message:
Maildir syncing works now without requiring base filenames to be in index
cache file. Also message flag updates with +FLAGS and -FLAGS works correctly
now if another client had just changed it's flags.



Index: index-update-flags.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib-storage/index/index-update-flags.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- index-update-flags.c	26 Jul 2003 16:55:11 -0000	1.25
+++ index-update-flags.c	10 Aug 2003 23:56:23 -0000	1.26
@@ -12,7 +12,7 @@
 	struct index_mail *imail = (struct index_mail *) mail;
 	struct index_mailbox *ibox = imail->ibox;
 	struct mail_storage *storage = mail->box->storage;
-	enum mail_flags modify_flags, new_flags;
+	enum mail_flags modify_flags;
 
 	if (mail->box->is_readonly(mail->box)) {
 		if (ibox->sent_readonly_flags_warning)
@@ -34,22 +34,9 @@
 					    flags->custom_flags_count))
 		return FALSE;
 
-	switch (modify_type) {
-	case MODIFY_ADD:
-		new_flags = imail->data.rec->msg_flags | modify_flags;
-		break;
-	case MODIFY_REMOVE:
-		new_flags = imail->data.rec->msg_flags & ~modify_flags;
-		break;
-	case MODIFY_REPLACE:
-		new_flags = modify_flags;
-		break;
-	default:
-		i_unreached();
-	}
-
 	if (!ibox->index->update_flags(ibox->index, imail->data.rec,
-				       imail->data.idx_seq, new_flags, FALSE))
+				       imail->data.idx_seq,
+				       modify_type, modify_flags, FALSE))
 		return FALSE;
 
 	if (mail_custom_flags_has_changes(ibox->index->custom_flags)) {



More information about the dovecot-cvs mailing list