From: Timo Sirainen Date: Fri, 18 Jun 2004 00:06:34 +0000 (+0300) Subject: read-only mbox fix X-Git-Tag: 1.1.alpha1~3947 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=292a66475ffe1037c2535063614f8beb71d266bf;p=thirdparty%2Fdovecot%2Fcore.git read-only mbox fix --HG-- branch : HEAD --- diff --git a/src/lib-storage/index/mbox/mbox-sync.c b/src/lib-storage/index/mbox/mbox-sync.c index 7b4134f18e..b48453f555 100644 --- a/src/lib-storage/index/mbox/mbox-sync.c +++ b/src/lib-storage/index/mbox/mbox-sync.c @@ -858,8 +858,15 @@ static int mbox_sync_update_index_header(struct mbox_sync_context *sync_ctx) return -1; } - if (sync_ctx->base_uid_validity != 0 && - sync_ctx->base_uid_validity != sync_ctx->hdr->uid_validity) { + if ((sync_ctx->base_uid_validity != 0 && + sync_ctx->base_uid_validity != sync_ctx->hdr->uid_validity) || + sync_ctx->hdr->uid_validity == 0) { + if (sync_ctx->hdr->uid_validity == 0) { + /* we couldn't rewrite X-IMAPbase because it's + a read-only mbox */ + i_assert(sync_ctx->ibox->mbox_readonly); + sync_ctx->base_uid_validity = time(NULL); + } mail_index_update_header(sync_ctx->t, offsetof(struct mail_index_header, uid_validity), &sync_ctx->base_uid_validity,