changeset 6138:447849dcc156 HEAD

Files aren't valid cydir mailboxes. Also comment updates.
author Timo Sirainen <tss@iki.fi>
date Mon, 23 Jul 2007 04:45:35 +0300
parents 327688eb425a
children cd0f9be6f8ad
files src/lib-storage/index/cydir/cydir-storage.c
diffstat 1 files changed, 6 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-storage/index/cydir/cydir-storage.c	Sat Jul 21 10:03:47 2007 +0300
+++ b/src/lib-storage/index/cydir/cydir-storage.c	Mon Jul 23 04:45:35 2007 +0300
@@ -347,7 +347,8 @@
 		index_mailbox_check_add(&mbox->ibox, mbox->path);
 }
 
-static int cydir_list_iter_is_mailbox(struct mailbox_list_iterate_context *ctx,
+static int cydir_list_iter_is_mailbox(struct mailbox_list_iterate_context *ctx
+				      			__attr_unused__,
 				      const char *dir, const char *fname,
 				      enum mailbox_list_file_type type,
 				      enum mailbox_info_flags *flags)
@@ -359,9 +360,9 @@
 	/* try to avoid stat() with these checks */
 	if (type != MAILBOX_LIST_FILE_TYPE_DIR &&
 	    type != MAILBOX_LIST_FILE_TYPE_SYMLINK &&
-	    type != MAILBOX_LIST_FILE_TYPE_UNKNOWN &&
-	    (ctx->flags & MAILBOX_LIST_ITER_RETURN_NO_FLAGS) != 0) {
+	    type != MAILBOX_LIST_FILE_TYPE_UNKNOWN) {
 		/* it's a file */
+		*flags |= MAILBOX_NOSELECT | MAILBOX_NOINFERIORS;
 		return 0;
 	}
 
@@ -376,7 +377,8 @@
 			ret = 0;
 		}
 	} else {
-		/* non-selectable, but may contain subdirs */
+		/* non-selectable. probably either access denied, or symlink
+		   destination not found. don't bother logging errors. */
 		*flags |= MAILBOX_NOSELECT;
 	}
 	t_pop();