]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Mailbox list indexes are now enabled also for in-memory indexes.
authorTimo Sirainen <tss@iki.fi>
Fri, 11 Feb 2011 22:38:09 +0000 (00:38 +0200)
committerTimo Sirainen <tss@iki.fi>
Fri, 11 Feb 2011 22:38:09 +0000 (00:38 +0200)
src/lib-storage/list/index-mailbox-list.c

index c9648185ce0aa54a2aa55812b2a2f820f3cb3ac9..cecc9f96e78b6119566e67788800b242c36616bd 100644 (file)
@@ -799,13 +799,15 @@ static void index_mailbox_list_created(struct mailbox_list *list)
        const char *dir;
 
        dir = mailbox_list_get_path(list, NULL, MAILBOX_LIST_PATH_TYPE_INDEX);
-       if (*dir == '\0' || list->mail_set->mailbox_list_index) {
+       if (list->mail_set->mailbox_list_index) {
                /* reserve the module context anyway, so syncing code knows
                   that the index is disabled */
                ilist = NULL;
                MODULE_CONTEXT_SET(list, index_mailbox_list_module, ilist);
                return;
        }
+       if (*dir == '\0')
+               dir = NULL;
 
        ilist = p_new(list->pool, struct index_mailbox_list, 1);
        ilist->module_ctx.super = list->v;
@@ -822,8 +824,8 @@ static void index_mailbox_list_created(struct mailbox_list *list)
 
        MODULE_CONTEXT_SET(list, index_mailbox_list_module, ilist);
 
-       ilist->path = p_strdup_printf(list->pool,
-                                     "%s/"MAILBOX_LIST_INDEX_PREFIX, dir);
+       ilist->path = dir == NULL ? "(in-memory mailbox list index)" :
+               p_strdup_printf(list->pool, "%s/"MAILBOX_LIST_INDEX_PREFIX, dir);
        ilist->index = mail_index_alloc(dir, MAILBOX_LIST_INDEX_PREFIX);
 
        ilist->ext_id = mail_index_ext_register(ilist->index, "list",