dovecot-2.2: fs layout: Don't assert-crash if namespace prefix b...

dovecot at dovecot.org dovecot at dovecot.org
Wed Feb 13 12:43:45 EET 2013


details:   http://hg.dovecot.org/dovecot-2.2/rev/fb367a977077
changeset: 15764:fb367a977077
user:      Timo Sirainen <tss at iki.fi>
date:      Wed Feb 13 12:43:34 2013 +0200
description:
fs layout: Don't assert-crash if namespace prefix begins with the separator.

diffstat:

 src/lib-storage/list/mailbox-list-fs-iter.c |  7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diffs (18 lines):

diff -r c0c38c4070f5 -r fb367a977077 src/lib-storage/list/mailbox-list-fs-iter.c
--- a/src/lib-storage/list/mailbox-list-fs-iter.c	Wed Feb 13 11:27:32 2013 +0100
+++ b/src/lib-storage/list/mailbox-list-fs-iter.c	Wed Feb 13 12:43:34 2013 +0200
@@ -399,9 +399,12 @@
 			prefix_vname = t_strdup_until(pattern, last);
 		}
 
-		if (p == last+1 && *pattern == ns_sep)
+		if (*pattern == ns_sep && full_fs_access) {
+			/* pattern=/something with full filesystem access.
+			   (without full filesystem access we want to skip this
+			   if namespace prefix begins with separator) */
 			root = "/";
-		else if ((ns->flags & NAMESPACE_FLAG_INBOX_USER) != 0 &&
+		} else if ((ns->flags & NAMESPACE_FLAG_INBOX_USER) != 0 &&
 			 ns->prefix_len == 6 &&
 			 strcasecmp(prefix_vname, "INBOX") == 0 &&
 			 strncasecmp(ns->prefix, pattern, ns->prefix_len) == 0) {


More information about the dovecot-cvs mailing list