summaryrefslogtreecommitdiff
path: root/src/leap/mail/imap/messages.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/leap/mail/imap/messages.py')
-rw-r--r--src/leap/mail/imap/messages.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/leap/mail/imap/messages.py b/src/leap/mail/imap/messages.py
index 35c07f5..7617fb8 100644
--- a/src/leap/mail/imap/messages.py
+++ b/src/leap/mail/imap/messages.py
@@ -335,16 +335,18 @@ class LeapMessage(fields, MailParser, MBoxParser):
charset = find_charset(content_type)
logger.debug('got charset from content-type: %s' % charset)
if charset is None:
- # XXX change for find_charset utility
charset = self._get_charset(body)
try:
body = body.encode(charset)
except UnicodeError as exc:
- logger.error("Unicode error {0}".format(exc))
+ logger.error(
+ "Unicode error, using 'replace'. {0!r}".format(exc))
logger.debug("Attempted to encode with: %s" % charset)
try:
body = body.encode(charset, 'replace')
- except UnicodeError as exc:
+
+ # XXX desperate attempt. I've seen things you wouldn't believe
+ except UnicodeError:
try:
body = body.encode('utf-8', 'replace')
except: