dovecot-2.1: lib-storage: dest_mail wasn't reset if previous sav...

dovecot at dovecot.org dovecot at dovecot.org
Wed Jan 9 05:35:35 EET 2013


details:   http://hg.dovecot.org/dovecot-2.1/rev/b87a7c4d775f
changeset: 14876:b87a7c4d775f
user:      Timo Sirainen <tss at iki.fi>
date:      Wed Jan 09 05:33:32 2013 +0200
description:
lib-storage: dest_mail wasn't reset if previous save was aborted.
This could have happened only with dsync.

diffstat:

 src/lib-storage/index/index-mail.c |  9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diffs (19 lines):

diff -r bdd1499989c6 -r b87a7c4d775f src/lib-storage/index/index-mail.c
--- a/src/lib-storage/index/index-mail.c	Wed Jan 09 05:30:06 2013 +0200
+++ b/src/lib-storage/index/index-mail.c	Wed Jan 09 05:33:32 2013 +0200
@@ -1387,8 +1387,13 @@
 {
 	struct index_mail *mail = (struct index_mail *)_mail;
 
-	if (mail->data.seq == seq)
-		return;
+	if (mail->data.seq == seq) {
+		if (!saving)
+			return;
+		/* we started saving a mail, aborted it, and now we're saving
+		   another mail with the same sequence. make sure the mail
+		   gets reset. */
+	}
 
 	mail->mail.v.close(&mail->mail.mail);
 


More information about the dovecot-cvs mailing list