From: Timo Sirainen Date: Fri, 9 Apr 2010 18:07:08 +0000 (+0300) Subject: mdbox: Fixed assert-crashing in storage rebuild. X-Git-Tag: 2.0.beta5~153 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f34c99a1b19f82c4e98cc4b7e2f7c91edba0544b;p=thirdparty%2Fdovecot%2Fcore.git mdbox: Fixed assert-crashing in storage rebuild. --HG-- branch : HEAD --- diff --git a/src/lib-storage/index/dbox-multi/mdbox-storage-rebuild.c b/src/lib-storage/index/dbox-multi/mdbox-storage-rebuild.c index 45989cd2e7..9810bdcad5 100644 --- a/src/lib-storage/index/dbox-multi/mdbox-storage-rebuild.c +++ b/src/lib-storage/index/dbox-multi/mdbox-storage-rebuild.c @@ -458,10 +458,10 @@ rebuild_mailbox(struct mdbox_storage_rebuild_context *ctx, enum mail_error error; int ret; - box = mdbox_mailbox_alloc(&ctx->storage->storage.storage, - ns->list, name, MAILBOX_FLAG_READONLY | - MAILBOX_FLAG_KEEP_RECENT | - MAILBOX_FLAG_IGNORE_ACLS); + box = mailbox_alloc(ns->list, name, MAILBOX_FLAG_READONLY | + MAILBOX_FLAG_KEEP_RECENT | + MAILBOX_FLAG_IGNORE_ACLS); + i_assert(box->storage == &ctx->storage->storage.storage); if (dbox_mailbox_open(box) < 0) { (void)mail_storage_get_last_error(box->storage, &error); mailbox_free(&box); @@ -595,10 +595,11 @@ static int rebuild_restore_msg(struct mdbox_storage_rebuild_context *ctx, strcmp(mailbox, ctx->prev_msg.box->name) == 0 ? ctx->prev_msg.box : NULL; while (box == NULL) { - box = mdbox_mailbox_alloc(storage, ctx->default_list, - mailbox, MAILBOX_FLAG_READONLY | - MAILBOX_FLAG_KEEP_RECENT | - MAILBOX_FLAG_IGNORE_ACLS); + box = mailbox_alloc(ctx->default_list, mailbox, + MAILBOX_FLAG_READONLY | + MAILBOX_FLAG_KEEP_RECENT | + MAILBOX_FLAG_IGNORE_ACLS); + i_assert(box->storage == storage); if (dbox_mailbox_open(box) == 0) break;