From: Timo Sirainen Date: Thu, 27 Apr 2017 09:54:20 +0000 (+0300) Subject: lib-storage: mail_search_arg_to_imap() - Fix writing invalid keywords X-Git-Tag: 2.2.30.rc1~67 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d644a2e2aba1ba829bfaf860706e3aedee4b73bd;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: mail_search_arg_to_imap() - Fix writing invalid keywords Just write the original invalid keyword string as output. It might not be entirely invalid - just invalid within this mailbox (e.g. a mailbox doesn't allow new keywords). --- diff --git a/src/lib-storage/mail-search-args-imap.c b/src/lib-storage/mail-search-args-imap.c index 0f6400423d..32e748523c 100644 --- a/src/lib-storage/mail-search-args-imap.c +++ b/src/lib-storage/mail-search-args-imap.c @@ -112,12 +112,11 @@ bool mail_search_arg_to_imap(string_t *dest, const struct mail_search_arg *arg, const char *const *namep; unsigned int i; - if (kw == NULL) { - /* uninitialized */ + if (kw == NULL || kw->count == 0) { + /* uninitialized / invalid keyword */ str_printfa(dest, "KEYWORD %s", arg->value.str); break; } - i_assert(kw->count > 0); names_arr = mail_index_get_keywords(kw->index);