]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
Virtual mailboxes: Skip non-selectable mailboxes when matching wildcards.
authorTimo Sirainen <tss@iki.fi>
Sat, 25 Oct 2008 20:10:32 +0000 (23:10 +0300)
committerTimo Sirainen <tss@iki.fi>
Sat, 25 Oct 2008 20:10:32 +0000 (23:10 +0300)
--HG--
branch : HEAD

src/plugins/virtual/virtual-config.c

index ddd3e5fd7e73adadb71c112532b58960511d7cb0..2a562ab14f622e2e90500766eaa5b3095f0de04e 100644 (file)
@@ -186,7 +186,11 @@ static int virtual_config_expand_wildcards(struct virtual_parse_context *ctx)
                                        MAILBOX_LIST_ITER_RETURN_NO_FLAGS);
        while ((info = mailbox_list_iter_next(iter)) != NULL) {
                for (i = 0; i < count; i++) {
+                       /* we match only one namespace for each pattern.
+                          skip non-selectable mailboxes (especially mbox
+                          directories) */
                        if (wboxes[i]->ns == info->ns &&
+                           (info->flags & MAILBOX_NOSELECT) == 0 &&
                            imap_match(wboxes[i]->glob,
                                       info->name) == IMAP_MATCH_YES) {
                                virtual_config_copy_expanded(ctx, wboxes[i],