From: Timo Sirainen Date: Tue, 6 Dec 2011 21:51:09 +0000 (+0200) Subject: lib-storage: Avoid crashes if listing subscriptions for a namespace that can't have... X-Git-Tag: 2.1.rc2~100 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3905cffc3fbc77a741bab4f6b6f396d9e26ee407;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: Avoid crashes if listing subscriptions for a namespace that can't have any. i.e. the namespace and its parents all have subscriptions=no --- diff --git a/src/lib-storage/mailbox-list-iter.c b/src/lib-storage/mailbox-list-iter.c index 3dbabe6f70..5f6cdf1db6 100644 --- a/src/lib-storage/mailbox-list-iter.c +++ b/src/lib-storage/mailbox-list-iter.c @@ -61,7 +61,12 @@ static int mailbox_list_subscriptions_refresh(struct mailbox_list *list) ns = mail_namespace_find_subscribable(ns->user->namespaces, ns->prefix); if (ns == NULL) { - /* no subscriptions */ + /* no subscriptions. avoid crashes by initializing + a subscriptions tree. */ + if (list->subscriptions == NULL) { + char sep = mail_namespace_get_sep(list->ns); + list->subscriptions = mailbox_tree_init(sep); + } return 0; } }