From d56bcbb354f1495e3323c7816cf69638975a8608 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Pali=20Roh=C3=A1r?= Date: Sun, 5 Jun 2016 15:48:15 +0200 Subject: [PATCH] lib-mail: message_address_write: Fix generating group list with empty name Empty name for group list must be quoted. Test case: { { name = NULL, mailbox = "", domain = NULL }, { name = NULL, mailbox = NULL, domain = NULL } } converts to: "":; --- src/lib-mail/message-address.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib-mail/message-address.c b/src/lib-mail/message-address.c index efa91fd289..9ce4a55e48 100644 --- a/src/lib-mail/message-address.c +++ b/src/lib-mail/message-address.c @@ -357,8 +357,12 @@ void message_address_write(string_t *str, const struct message_address *addr) if (!in_group) { /* beginning of group. mailbox is the group name, others are NULL. */ - if (addr->mailbox != NULL) + if (addr->mailbox != NULL && *addr->mailbox != '\0') { str_append(str, addr->mailbox); + } else { + /* empty group name needs to be quoted */ + str_append(str, "\"\""); + } str_append(str, ": "); first = TRUE; } else { -- 2.47.3