From: Timo Sirainen Date: Thu, 16 Oct 2014 15:19:03 +0000 (-0700) Subject: lib-storage: LAYOUT=index doesn't reserve '~' as internal separator anymore. X-Git-Tag: 2.2.15~55 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f3391d65cc830eab22ca6c5941774de682716edb;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: LAYOUT=index doesn't reserve '~' as internal separator anymore. The index doesn't reserve any character as hierarchy separator, so the internal separator can change at any time. Use the namespace's configured hierarchy separator as the internal separator to avoid reserving any characters. If namespace separator isn't configured, fallback to the original '~' so this change shouldn't break anything. --- diff --git a/src/lib-storage/list/mailbox-list-index-backend.c b/src/lib-storage/list/mailbox-list-index-backend.c index 85f282f813..373769b410 100644 --- a/src/lib-storage/list/mailbox-list-index-backend.c +++ b/src/lib-storage/list/mailbox-list-index-backend.c @@ -60,9 +60,10 @@ static void index_list_deinit(struct mailbox_list *_list) pool_unref(&list->list.pool); } -static char index_list_get_hierarchy_sep(struct mailbox_list *list ATTR_UNUSED) +static char index_list_get_hierarchy_sep(struct mailbox_list *list) { - return MAILBOX_LIST_INDEX_HIERARHCY_SEP; + return *list->ns->set->separator != '\0' ? *list->ns->set->separator : + MAILBOX_LIST_INDEX_HIERARHCY_SEP; } static int