Mercurial > dovecot > core-2.2
changeset 22706:6ea402d0c650
LAYOUT=Maildir++: List INBOX as \NoInferiors when necessary
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Thu, 14 Dec 2017 01:23:45 +0200 |
parents | f9b676b1b028 |
children | 42e50736aac0 |
files | src/lib-storage/list/mailbox-list-maildir-iter.c |
diffstat | 1 files changed, 6 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/list/mailbox-list-maildir-iter.c Thu Dec 14 01:23:01 2017 +0200 +++ b/src/lib-storage/list/mailbox-list-maildir-iter.c Thu Dec 14 01:23:45 2017 +0200 @@ -505,6 +505,12 @@ return mailbox_list_iter_default_next(_ctx); ctx->info.flags = node->flags; + if (strcmp(ctx->info.vname, "INBOX") == 0 && + mail_namespace_is_inbox_noinferiors(ctx->info.ns)) { + i_assert((ctx->info.flags & MAILBOX_NOCHILDREN) != 0); + ctx->info.flags &= ~MAILBOX_NOCHILDREN; + ctx->info.flags |= MAILBOX_NOINFERIORS; + } if ((_ctx->flags & MAILBOX_LIST_ITER_RETURN_SUBSCRIBED) != 0 && (_ctx->flags & MAILBOX_LIST_ITER_SELECT_SUBSCRIBED) == 0) { /* we're listing all mailboxes but we want to know