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.3.0.rc1~1684 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=06c956f4154bbed5cc4bf7fbd6553a7d93ca24cc;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 1205ebee9e..9d24d18be2 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);