From d644a2e2aba1ba829bfaf860706e3aedee4b73bd Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Thu, 27 Apr 2017 12:54:20 +0300 Subject: [PATCH] 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). --- src/lib-storage/mail-search-args-imap.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) 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); -- 2.47.3