# HG changeset patch # User Timo Sirainen # Date 1498492224 -10800 # Node ID 08851deea49cf1f2571e68423a690eb783004df6 # Parent 0dd7baafb46e0ad93d035985fbb99f67392fd19c lib-storage: mailbox_list_get_permissions() - Use index dir with ITERINDEX diff -r 0dd7baafb46e -r 08851deea49c src/lib-storage/mailbox-list.c --- a/src/lib-storage/mailbox-list.c Mon Jun 26 18:46:30 2017 +0300 +++ b/src/lib-storage/mailbox-list.c Mon Jun 26 18:50:24 2017 +0300 @@ -967,8 +967,13 @@ permissions_r->file_create_gid = (gid_t)-1; permissions_r->file_create_gid_origin = "defaults"; - if ((list->flags & MAILBOX_LIST_FLAG_NO_MAIL_FILES) != 0) { - /* mail files don't exist in storage, but index files might. */ + if (list->set.iter_from_index_dir || + (list->flags & MAILBOX_LIST_FLAG_NO_MAIL_FILES) != 0) { + /* a) iterating from index dir. Use the index dir's permissions + as well, since they might be in a faster storage. + + b) mail files don't exist in storage, but index files + might. */ (void)mailbox_list_get_path(list, name, MAILBOX_LIST_PATH_TYPE_INDEX, &path); }