From: Aki Tuomi Date: Wed, 5 Apr 2017 10:27:57 +0000 (+0300) Subject: lib-storage: Return empty value in imapc_list_get_storage_name on auth error X-Git-Tag: 2.2.29.rc1~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3edba8e32451c315e99b31191b6c6f79e836b7c4;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: Return empty value in imapc_list_get_storage_name on auth error Avoids clobbering authentication error. --- diff --git a/src/lib-storage/index/imapc/imapc-list.c b/src/lib-storage/index/imapc/imapc-list.c index 302c8328f3..0e00160991 100644 --- a/src/lib-storage/index/imapc/imapc-list.c +++ b/src/lib-storage/index/imapc/imapc-list.c @@ -347,6 +347,11 @@ imapc_list_get_storage_name(struct mailbox_list *_list, const char *vname) const char *prefix = list->set->imapc_list_prefix; const char *storage_name; + /* check if authentication has failed, if it has, short circuit here + to avoid the error being clobbered by mailbox_list_get_hierarchy_sep */ + if (list->client->auth_failed) + return ""; + storage_name = mailbox_list_default_get_storage_name(_list, vname); if (*prefix != '\0' && strcasecmp(storage_name, "INBOX") != 0) { storage_name = storage_name[0] == '\0' ? prefix :