]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Non-crashing way of avoiding fs lookups for storages without mail root.
authorTimo Sirainen <tss@iki.fi>
Fri, 22 Nov 2013 22:38:41 +0000 (00:38 +0200)
committerTimo Sirainen <tss@iki.fi>
Fri, 22 Nov 2013 22:38:41 +0000 (00:38 +0200)
src/lib-storage/mailbox-list.c

index a78043ddf87be0960e611c1a97a647603a8efa55..f6bac2e9eeb7aeb98b1b8554ee8e917582d7b9bd 100644 (file)
@@ -843,7 +843,6 @@ mailbox_list_get_permissions_internal(struct mailbox_list *list,
                                      const char *name,
                                      struct mailbox_permissions *permissions_r)
 {
-       struct mail_storage *storage;
        const char *path, *parent_name, *parent_path, *p;
        struct stat st;
 
@@ -866,10 +865,9 @@ mailbox_list_get_permissions_internal(struct mailbox_list *list,
                (void)mailbox_list_get_root_path(list, MAILBOX_LIST_PATH_TYPE_DIR,
                                                 &path);
        }
-       mailbox_list_get_default_storage(list, &storage);
 
        if (path == NULL ||
-           (storage->class_flags & MAIL_STORAGE_CLASS_FLAG_NO_ROOT) != 0) {
+           (list->flags & MAILBOX_LIST_FLAG_NO_MAIL_FILES) != 0) {
                /* no filesystem support in storage */
        } else if (stat(path, &st) < 0) {
                if (errno == EACCES) {