don't refuse to strip Path just because it's INBOX/

no ambiguity can result from this, so there is no reason to treat
sub-folders of INBOX differently from any other namespace.
This commit is contained in:
Oswald Buddenhagen 2015-03-23 20:16:47 +01:00
parent bd0f3af578
commit d8225390fc
2 changed files with 13 additions and 8 deletions

3
NEWS
View File

@ -2,6 +2,9 @@
The 'isync' compatibility wrapper is now deprecated. The 'isync' compatibility wrapper is now deprecated.
An IMAP Path/NAMESPACE rooted in INBOX won't be handled specially any more.
This means that some Patterns may need adjustment.
The SSL/TLS configuration has been re-designed. The SSL/TLS configuration has been re-designed.
SSL is now explicitly enabled or disabled - "use SSL if available" is gone. SSL is now explicitly enabled or disabled - "use SSL if available" is gone.
Notice: Tunnels are assumed to be secure and thus default to no SSL. Notice: Tunnels are assumed to be secure and thus default to no SSL.

View File

@ -1149,9 +1149,8 @@ parse_list_rsp_p2( imap_store_t *ctx, list_t *list, char *cmd ATTR_UNUSED )
} }
arg = list->val; arg = list->val;
argl = list->len; argl = list->len;
if (!is_inbox( ctx, arg, argl ) && (l = strlen( ctx->prefix ))) { if ((l = strlen( ctx->prefix ))) {
if (!starts_with( arg, argl, ctx->prefix, l )) if (starts_with( arg, argl, ctx->prefix, l )) {
goto skip;
arg += l; arg += l;
argl -= l; argl -= l;
if (is_inbox( ctx, arg, argl )) { if (is_inbox( ctx, arg, argl )) {
@ -1159,6 +1158,9 @@ parse_list_rsp_p2( imap_store_t *ctx, list_t *list, char *cmd ATTR_UNUSED )
warn( "IMAP warning: ignoring INBOX in %s\n", ctx->prefix ); warn( "IMAP warning: ignoring INBOX in %s\n", ctx->prefix );
goto skip; goto skip;
} }
} else if (!is_inbox( ctx, arg, argl )) {
goto skip;
}
} }
if (argl >= 5 && !memcmp( arg + argl - 5, ".lock", 5 )) /* workaround broken servers */ if (argl >= 5 && !memcmp( arg + argl - 5, ".lock", 5 )) /* workaround broken servers */
goto skip; goto skip;