From: Timo Sirainen Date: Thu, 17 Jun 2004 23:36:52 +0000 (+0300) Subject: fixes X-Git-Tag: 1.1.alpha1~3949 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=325f4573edfa5b751832ac01023f3e81be992bf0;p=thirdparty%2Fdovecot%2Fcore.git fixes --HG-- branch : HEAD --- diff --git a/src/lib-storage/index/mbox/mbox-sync-update.c b/src/lib-storage/index/mbox/mbox-sync-update.c index cea0a782bb..b933da487b 100644 --- a/src/lib-storage/index/mbox/mbox-sync-update.c +++ b/src/lib-storage/index/mbox/mbox-sync-update.c @@ -208,7 +208,7 @@ static void mbox_sync_update_x_imap_base(struct mbox_sync_mail_context *ctx) const char *p, *hdr; size_t pos; - if (ctx->sync_ctx->dest_first_mail || + if (!ctx->sync_ctx->dest_first_mail || ctx->hdr_pos[MBOX_HDR_X_IMAPBASE] == (size_t)-1 || ctx->sync_ctx->update_base_uid_last == 0 || ctx->sync_ctx->update_base_uid_last < ctx->sync_ctx->base_uid_last) diff --git a/src/lib-storage/index/mbox/mbox-sync.c b/src/lib-storage/index/mbox/mbox-sync.c index 15f475c932..7b4134f18e 100644 --- a/src/lib-storage/index/mbox/mbox-sync.c +++ b/src/lib-storage/index/mbox/mbox-sync.c @@ -865,7 +865,7 @@ static int mbox_sync_update_index_header(struct mbox_sync_context *sync_ctx) &sync_ctx->base_uid_validity, sizeof(sync_ctx->base_uid_validity)); } - if (sync_ctx->base_uid_last != 0 && + if (sync_ctx->input->eof && sync_ctx->next_uid != sync_ctx->hdr->next_uid) { i_assert(sync_ctx->next_uid != 0); mail_index_update_header(sync_ctx->t, @@ -899,6 +899,8 @@ static void mbox_sync_restart(struct mbox_sync_context *sync_ctx) sync_ctx->next_uid = 1; sync_ctx->prev_msg_uid = 0; sync_ctx->seq = sync_ctx->idx_seq = 0; + + sync_ctx->dest_first_mail = TRUE; } static int mbox_sync_do(struct mbox_sync_context *sync_ctx)