From: Aki Tuomi Date: Wed, 5 Jul 2017 11:24:49 +0000 (+0300) Subject: virtual: Expunge virtual mails if backend box is deleted X-Git-Tag: 2.2.32.rc1~82 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=75c35656b71cd9eb801f37469b4fffe517c8906f;p=thirdparty%2Fdovecot%2Fcore.git virtual: Expunge virtual mails if backend box is deleted When mail is added to a mailbox and then deleted, expunge the sequences from virtual index in sync. Fixes Error: Unexpectedly lost Mailbox ID 4 --- diff --git a/src/plugins/virtual/virtual-sync.c b/src/plugins/virtual/virtual-sync.c index 08f3b71ef3..e86ec6dc2c 100644 --- a/src/plugins/virtual/virtual-sync.c +++ b/src/plugins/virtual/virtual-sync.c @@ -1516,11 +1516,8 @@ virtual_sync_apply_existing_appends(struct virtual_sync_context *ctx) bbox = virtual_backend_box_lookup(ctx->mbox, vrec->mailbox_id); if (bbox == NULL) { - mail_storage_set_critical( - ctx->mbox->box.storage, - "%s: Mailbox ID %u unexpectedly lost", - ctx->mbox->box.vname, vrec->mailbox_id); - return -1; + mail_index_expunge(ctx->trans, seq); + continue; } } array_append(&bbox->uids, &uidmap, 1);