]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
mailbox_list_get_mailbox_name_status(): Fixed INBOX handling with FS layout.
authorTimo Sirainen <tss@iki.fi>
Thu, 18 Feb 2010 05:31:55 +0000 (07:31 +0200)
committerTimo Sirainen <tss@iki.fi>
Thu, 18 Feb 2010 05:31:55 +0000 (07:31 +0200)
--HG--
branch : HEAD

src/lib-storage/list/mailbox-list-fs.c

index 8c6811ce01d6fdcc6ce099ab4878cc76097864a4..f09c90d5f3f27b93f866009cf2bc7b8dc3ec68a0 100644 (file)
@@ -236,10 +236,15 @@ fs_list_get_mailbox_name_status(struct mailbox_list *_list, const char *name,
        const char *path, *dir_path;
        enum mailbox_info_flags flags;
 
+       if (strcmp(name, "INBOX") == 0 &&
+           (_list->ns->flags & NAMESPACE_FLAG_INBOX) != 0) {
+               *status = MAILBOX_NAME_EXISTS_MAILBOX;
+               return 0;
+       }
+
        path = mailbox_list_get_path(_list, name,
                                     MAILBOX_LIST_PATH_TYPE_MAILBOX);
-
-       if (strcmp(name, "INBOX") == 0 || stat(path, &st) == 0) {
+       if (stat(path, &st) == 0) {
                if (*_list->set.maildir_name != '\0' ||
                    _list->v.is_internal_name == NULL || !S_ISDIR(st.st_mode)) {
                        *status = MAILBOX_NAME_EXISTS_MAILBOX;