Mercurial > dovecot > original-hg > dovecot-1.2
diff src/lib-index/mbox/mbox-rewrite.c @ 383:652553a9f54c HEAD
minor speedups
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Tue, 08 Oct 2002 03:36:04 +0300 |
parents | b0a62e264b22 |
children | 60040a9d243f |
line wrap: on
line diff
--- a/src/lib-index/mbox/mbox-rewrite.c Mon Oct 07 18:18:59 2002 +0300 +++ b/src/lib-index/mbox/mbox-rewrite.c Tue Oct 08 03:36:04 2002 +0300 @@ -454,17 +454,22 @@ failed = FALSE; seq = 1; rec = index->lookup(index, 1); while (rec != NULL) { - /* get offset to beginning of mail headers */ - if (!mbox_mail_get_start_offset(index, rec, &offset)) { - /* fsck should have fixed it */ - failed = TRUE; - break; - } + if (dirty_found || (rec->index_flags & INDEX_MAIL_FLAG_DIRTY)) { + /* get offset to beginning of mail headers */ + if (!mbox_mail_get_start_offset(index, rec, &offset)) { + /* fsck should have fixed it */ + failed = TRUE; + break; + } - if (offset + rec->header_size + rec->body_size > inbuf->size) { - index_set_corrupted(index, "Invalid message size"); - failed = TRUE; - break; + if (offset + rec->header_size + rec->body_size > inbuf->size) { + index_set_corrupted(index, + "Invalid message size"); + failed = TRUE; + break; + } + } else { + offset = 0; } if (!dirty_found &&