]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
imapc: Don't crash when trying to use imapc's subscription list for another namespace.
authorTimo Sirainen <tss@iki.fi>
Tue, 6 Sep 2011 14:29:38 +0000 (17:29 +0300)
committerTimo Sirainen <tss@iki.fi>
Tue, 6 Sep 2011 14:29:38 +0000 (17:29 +0300)
src/lib-storage/index/imapc/imapc-list.c

index f364f1173d4c7c69f296bd1a518583c9f0b9f727..097d586a7e2ba37ae6465e7073e2de0fb2c02ace 100644 (file)
@@ -417,11 +417,18 @@ imapc_list_subscriptions_refresh(struct mailbox_list *_src_list,
        struct imapc_mailbox_list *src_list =
                (struct imapc_mailbox_list *)_src_list;
        struct imapc_simple_context ctx;
+       char sep;
 
        i_assert(src_list->tmp_subscriptions == NULL);
 
-       if (src_list->refreshed_subscriptions)
+       if (src_list->refreshed_subscriptions) {
+               if (dest_list->subscriptions == NULL) {
+                       sep = mailbox_list_get_hierarchy_sep(dest_list);
+                       dest_list->subscriptions =
+                               mailbox_tree_init(sep);
+               }
                return 0;
+       }
 
        if (src_list->sep == '\0')
                (void)mailbox_list_get_hierarchy_sep(_src_list);