From fedb7a111ba2102edce8e55a1ba77cf907c6add9 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Sun, 9 Jun 2013 14:53:31 +0300 Subject: [PATCH] lib-storage: Fixed crashes caused by recent "multiple storages per namespace" change. --- src/lib-storage/index/shared/shared-storage.c | 1 + src/lib-storage/mail-namespace.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/lib-storage/index/shared/shared-storage.c b/src/lib-storage/index/shared/shared-storage.c index a6a76f3264..12a2903628 100644 --- a/src/lib-storage/index/shared/shared-storage.c +++ b/src/lib-storage/index/shared/shared-storage.c @@ -289,6 +289,7 @@ int shared_storage_get_namespace(struct mail_namespace **_ns, NAMESPACE_FLAG_LIST_PREFIX | NAMESPACE_FLAG_HIDDEN | NAMESPACE_FLAG_AUTOCREATED | NAMESPACE_FLAG_INBOX_ANY; new_ns->mail_set = _storage->set; + i_array_init(&new_ns->all_storages, 2); location = t_str_new(256); if (ret > 0) diff --git a/src/lib-storage/mail-namespace.c b/src/lib-storage/mail-namespace.c index a6ede7a6dd..f0176f4221 100644 --- a/src/lib-storage/mail-namespace.c +++ b/src/lib-storage/mail-namespace.c @@ -408,6 +408,7 @@ int mail_namespaces_init_location(struct mail_user *user, const char *location, ns->flags = NAMESPACE_FLAG_INBOX_USER | NAMESPACE_FLAG_INBOX_ANY | NAMESPACE_FLAG_LIST_PREFIX | NAMESPACE_FLAG_SUBSCRIPTIONS; ns->owner = user; + i_array_init(&ns->all_storages, 2); inbox_set = p_new(user->pool, struct mail_namespace_settings, 1); *inbox_set = mail_namespace_default_settings; @@ -489,6 +490,7 @@ struct mail_namespace *mail_namespaces_init_empty(struct mail_user *user) ns->flags = NAMESPACE_FLAG_INBOX_USER | NAMESPACE_FLAG_INBOX_ANY | NAMESPACE_FLAG_LIST_PREFIX | NAMESPACE_FLAG_SUBSCRIPTIONS; ns->mail_set = mail_user_set_get_storage_set(user); + i_array_init(&ns->all_storages, 2); user->namespaces = ns; return ns; } -- 2.47.3