dovecot-2.0: dsync: Message list wasn't sorted properly, which c...

dovecot at dovecot.org dovecot at dovecot.org
Fri Jan 29 18:06:17 EET 2010


details:   http://hg.dovecot.org/dovecot-2.0/rev/e9046fc7c6b4
changeset: 10607:e9046fc7c6b4
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Jan 29 18:05:32 2010 +0200
description:
dsync: Message list wasn't sorted properly, which caused sync to be incomplete.

diffstat:

1 file changed, 2 insertions(+), 1 deletion(-)
src/dsync/dsync-brain-msgs-new.c |    3 ++-

diffs (20 lines):

diff -r 9a6015507c78 -r e9046fc7c6b4 src/dsync/dsync-brain-msgs-new.c
--- a/src/dsync/dsync-brain-msgs-new.c	Fri Jan 29 17:15:36 2010 +0200
+++ b/src/dsync/dsync-brain-msgs-new.c	Fri Jan 29 18:05:32 2010 +0200
@@ -133,6 +133,7 @@ dsync_brain_mailbox_add_new_msgs(struct 
 	msgs = array_get(&iter->new_msgs, &msg_count);
 	for (i = iter->next_new_msg; i < msg_count; i++) {
 		if (msgs[i].mailbox_idx != iter->mailbox_idx) {
+			i_assert(msgs[i].mailbox_idx > iter->mailbox_idx);
 			ret = FALSE;
 			break;
 		}
@@ -278,7 +279,7 @@ static int dsync_brain_new_msg_cmp(const
 {
 	if (m1->mailbox_idx < m2->mailbox_idx)
 		return -1;
-	if (m1->mailbox_idx < m2->mailbox_idx)
+	if (m1->mailbox_idx > m2->mailbox_idx)
 		return 1;
 
 	if (m1->msg->uid < m2->msg->uid)


More information about the dovecot-cvs mailing list