From: Timo Sirainen Date: Tue, 21 Feb 2017 13:44:09 +0000 (+0200) Subject: imapc: Error handling wasn't setting storage error everywhere. X-Git-Tag: 2.2.29.rc1~249 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=95e2c9f27696f41ec9358bdef267f0ddcb842972;p=thirdparty%2Fdovecot%2Fcore.git imapc: Error handling wasn't setting storage error everywhere. This would have used the previous error, which might not have been correct. --- diff --git a/src/lib-storage/index/imapc/imapc-mail-fetch.c b/src/lib-storage/index/imapc/imapc-mail-fetch.c index ebedf481bd..b5511f9688 100644 --- a/src/lib-storage/index/imapc/imapc-mail-fetch.c +++ b/src/lib-storage/index/imapc/imapc-mail-fetch.c @@ -213,8 +213,10 @@ imapc_mail_send_fetch(struct mail *_mail, enum mail_fetch_field fields, uint32_t seq; unsigned int i; - if (_mail->lookup_abort != MAIL_LOOKUP_ABORT_NEVER) + if (_mail->lookup_abort != MAIL_LOOKUP_ABORT_NEVER) { + mail_set_aborted(_mail); return -1; + } _mail->mail_stream_opened = TRUE; /* drop any fields that we may already be fetching currently */ @@ -444,8 +446,10 @@ int imapc_mail_fetch(struct mail *_mail, enum mail_fetch_field fields, !imail->header_list_fetched)) { imapc_mailbox_run_nofetch(mbox); } - if (imail->fetch_failed) + if (imail->fetch_failed) { + mail_storage_set_internal_error(&mbox->storage->storage); return -1; + } return 0; }