From b2f9479bce32139a6eb6ea43dad15edd3f3924a8 Mon Sep 17 00:00:00 2001 From: Son NK <> Date: Mon, 9 Nov 2020 20:58:39 +0100 Subject: [PATCH] failover when ascii encoding fails --- app/email_utils.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/email_utils.py b/app/email_utils.py index c53fec50..30fb5e4c 100644 --- a/app/email_utils.py +++ b/app/email_utils.py @@ -622,7 +622,11 @@ def parseaddr_unicode(addr) -> (str, str): def copy(msg: Message) -> Message: """return a copy of message""" - return email.message_from_bytes(to_bytes(msg)) + try: + return email.message_from_bytes(to_bytes(msg)) + except UnicodeEncodeError: + LOG.warning("to_bytes() fails, try string") + return email.message_from_string(msg.as_string()) def to_bytes(msg: Message):