Mercurial > dovecot > core-2.2
changeset 12879:939e0fccd517
imapc: Don't log an error message about missing BODY[] if message was already expunged.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 04 Apr 2011 13:51:34 +0300 |
parents | 194855240d31 |
children | 6a9348fb2253 |
files | src/lib-storage/index/imapc/imapc-mail.c |
diffstat | 1 files changed, 12 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/index/imapc/imapc-mail.c Mon Apr 04 13:42:23 2011 +0300 +++ b/src/lib-storage/index/imapc/imapc-mail.c Mon Apr 04 13:51:34 2011 +0300 @@ -4,6 +4,7 @@ #include "str.h" #include "istream.h" #include "imap-envelope.h" +#include "imapc-seqmap.h" #include "imapc-mail.h" #include "imapc-client.h" #include "imapc-storage.h" @@ -117,8 +118,17 @@ return -1; if (data->stream == NULL) { - mail_storage_set_critical(_mail->box->storage, - "imapc: Remote server didn't send BODY[]"); + struct imapc_mailbox *mbox = + (struct imapc_mailbox *)_mail->box; + struct imapc_seqmap *seqmap; + + seqmap = imapc_client_mailbox_get_seqmap(mbox->client_box); + if (imapc_seqmap_lseq_to_rseq(seqmap, _mail->seq) == 0) + mail_set_expunged(_mail); + else if (!_mail->expunged) { + mail_storage_set_critical(_mail->box->storage, + "imapc: Remote server didn't send BODY[]"); + } return -1; } }