]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
dbox: Getting dbox file for non-first unsaved mail crashed.
authorTimo Sirainen <tss@iki.fi>
Wed, 7 Oct 2009 16:28:29 +0000 (12:28 -0400)
committerTimo Sirainen <tss@iki.fi>
Wed, 7 Oct 2009 16:28:29 +0000 (12:28 -0400)
--HG--
branch : HEAD

src/lib-storage/index/dbox-multi/mdbox-save.c
src/lib-storage/index/dbox-single/sdbox-save.c

index 136c3fdba1b0f49eff3141bba0c41fd98dc1a8eb..781e6e9731070eb3e0714b71a3a6295edd3586e0 100644 (file)
@@ -54,7 +54,7 @@ mdbox_save_file_get_file(struct mailbox_transaction_context *t,
        i_assert(count > 0);
        i_assert(seq >= mails[0].seq);
 
-       mail = &mails[mails[0].seq - seq];
+       mail = &mails[seq - mails[0].seq];
        i_assert(mail->seq == seq);
 
        if (dbox_file_append_flush(mail->file_append) < 0)
index 7c8c5ff6041ffa0c717a8c695b02583a575832e2..b0fb72c3a49f11919bb3a60a70e06ce3d31aa6e5 100644 (file)
@@ -43,7 +43,7 @@ sdbox_save_file_get_file(struct mailbox_transaction_context *t, uint32_t seq)
        files = array_get(&ctx->files, &count);
        i_assert(count > 0);
 
-       return files[ctx->first_saved_seq - seq];
+       return files[seq - ctx->first_saved_seq];
 }
 
 struct mail_save_context *