Mercurial > dovecot > core-2.2
changeset 12665:440a1a3660ba
lib-storage: Fixes to mailbox_list_iter_update()
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 12 Feb 2011 06:05:40 +0200 |
parents | 47b4b5a12335 |
children | 0af45e821da1 |
files | src/lib-storage/mailbox-list.c |
diffstat | 1 files changed, 3 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/mailbox-list.c Sat Feb 12 06:05:07 2011 +0200 +++ b/src/lib-storage/mailbox-list.c Sat Feb 12 06:05:40 2011 +0200 @@ -1358,14 +1358,12 @@ { struct mail_namespace *ns = ctx->iter_ctx->list->ns; struct mailbox_node *node; - enum mailbox_info_flags create_flags = 0, always_flags; + enum mailbox_info_flags create_flags, always_flags; enum imap_match_result match; const char *p; bool created, add_matched; - if (ctx->update_only || - (ctx->iter_ctx->flags & MAILBOX_LIST_ITER_RETURN_NO_FLAGS) == 0) - create_flags = MAILBOX_NONEXISTENT | MAILBOX_NOCHILDREN; + create_flags = MAILBOX_NOCHILDREN; always_flags = ctx->leaf_flags; add_matched = TRUE; @@ -1407,6 +1405,7 @@ break; name = t_strdup_until(name, p); + create_flags |= MAILBOX_NONEXISTENT; create_flags &= ~MAILBOX_NOCHILDREN; always_flags = MAILBOX_CHILDREN | ctx->parent_flags; }