From: Timo Sirainen Date: Thu, 18 Feb 2010 05:31:55 +0000 (+0200) Subject: mailbox_list_get_mailbox_name_status(): Fixed INBOX handling with FS layout. X-Git-Tag: 2.0.beta3~51 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a3fbf5236d3daec08f191e569cdc4758809cb05f;p=thirdparty%2Fdovecot%2Fcore.git mailbox_list_get_mailbox_name_status(): Fixed INBOX handling with FS layout. --HG-- branch : HEAD --- diff --git a/src/lib-storage/list/mailbox-list-fs.c b/src/lib-storage/list/mailbox-list-fs.c index 8c6811ce01..f09c90d5f3 100644 --- a/src/lib-storage/list/mailbox-list-fs.c +++ b/src/lib-storage/list/mailbox-list-fs.c @@ -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;