From: Timo Sirainen Date: Tue, 25 May 2010 16:34:56 +0000 (+0100) Subject: lib-index: Fix to recent error handling change. X-Git-Tag: 2.0.beta6~162 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7471f28b16b81f9af413c879b3efb16eeafd2bd9;p=thirdparty%2Fdovecot%2Fcore.git lib-index: Fix to recent error handling change. --HG-- branch : HEAD --- diff --git a/src/lib-index/mail-transaction-log-view.c b/src/lib-index/mail-transaction-log-view.c index 13fa9056e0..e2f8eb434d 100644 --- a/src/lib-index/mail-transaction-log-view.c +++ b/src/lib-index/mail-transaction-log-view.c @@ -202,16 +202,6 @@ int mail_transaction_log_view_set(struct mail_transaction_log_view *view, } i_assert(min_file_offset >= view->tail->hdr.hdr_size); - if (min_file_seq == view->head->hdr.file_seq && - min_file_offset > view->head->sync_offset) { - /* log file offset is probably corrupted in the index file. */ - mail_transaction_log_view_set_corrupted(view, - "file_seq=%u, min_file_offset (%"PRIuUOFF_T - ") > sync_offset (%"PRIuUOFF_T")", min_file_seq, - min_file_offset, view->head->sync_offset); - return -1; - } - /* we have all of them. update refcounts. */ mail_transaction_log_view_unref_all(view); @@ -262,6 +252,16 @@ int mail_transaction_log_view_set(struct mail_transaction_log_view *view, } } + if (min_file_seq == view->head->hdr.file_seq && + min_file_offset > view->head->sync_offset) { + /* log file offset is probably corrupted in the index file. */ + mail_transaction_log_view_set_corrupted(view, + "file_seq=%u, min_file_offset (%"PRIuUOFF_T + ") > sync_offset (%"PRIuUOFF_T")", min_file_seq, + min_file_offset, view->head->sync_offset); + return -1; + } + i_assert(max_file_seq == (uint32_t)-1 || max_file_seq == view->head->hdr.file_seq); i_assert(max_file_offset == (uoff_t)-1 ||