From d967ba782a93e23a2eafdfdff377a92eb048fd52 Mon Sep 17 00:00:00 2001 From: Aki Tuomi Date: Mon, 3 Jul 2017 13:53:31 +0300 Subject: [PATCH] virtual: Fix highest_mailbox_id if it's wrong --- src/plugins/virtual/virtual-sync.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/plugins/virtual/virtual-sync.c b/src/plugins/virtual/virtual-sync.c index ab58e5dcbe..df7949820d 100644 --- a/src/plugins/virtual/virtual-sync.c +++ b/src/plugins/virtual/virtual-sync.c @@ -311,6 +311,14 @@ static void virtual_sync_ext_header_rewrite(struct virtual_sync_context *ctx) mailbox_pos += sizeof(mailbox); name_pos += mailbox.name_len; + + /* repair the value */ + if (ctx->mbox->highest_mailbox_id < mailbox.id) + ctx->mbox->highest_mailbox_id = mailbox.id; + } + if (ctx->mbox->highest_mailbox_id != ext_hdr.highest_mailbox_id) { + ext_hdr.highest_mailbox_id = ctx->mbox->highest_mailbox_id; + buffer_write(buf, 0, &ext_hdr, sizeof(ext_hdr)); } i_assert(buf->used == name_pos); -- 2.47.3