From 240374950ac6d549b03d076621610e076de9ff2e Mon Sep 17 00:00:00 2001 From: Manos Pitsidianakis Date: Mon, 4 Oct 2021 12:36:22 +0300 Subject: [PATCH] melib/email/address: quote display_name if it contains "." --- melib/src/email/address.rs | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/melib/src/email/address.rs b/melib/src/email/address.rs index 844b0790..87c12fee 100644 --- a/melib/src/email/address.rs +++ b/melib/src/email/address.rs @@ -323,12 +323,14 @@ impl Hash for Address { impl core::fmt::Display for Address { fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result { match self { - Address::Mailbox(m) if m.display_name.length > 0 => write!( - f, - "{} <{}>", - m.display_name.display(&m.raw), - m.address_spec.display(&m.raw) - ), + Address::Mailbox(m) if m.display_name.length > 0 => { + match m.display_name.display(&m.raw) { + d if d.contains(".") => { + write!(f, "\"{}\" <{}>", d, m.address_spec.display(&m.raw)) + } + d => write!(f, "{} <{}>", d, m.address_spec.display(&m.raw)), + } + } Address::Group(g) => { let attachment_strings: Vec = g.mailbox_list.iter().map(|a| format!("{}", a)).collect();