diff options
| author | Christophe Simonis <chs@odoo.com> | 2017-10-21 15:22:36 +0200 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2017-10-21 15:22:36 +0200 |
| commit | de987831da237ed5f9c96d50a9e51d083e072aa0 (patch) | |
| tree | ef714d2d98693eae3446620d28bb48314573018a /addons/mail/models/mail_thread.py | |
| parent | ea2a976f31b2611b6b4ff69f4a5cdc2ffc7798fe (diff) | |
| parent | d70518d04f8f8061c8c683ea4ba8c95ae631ae45 (diff) | |
[MERGE] forward port branch 11.0 up to d70518d04f8
Diffstat (limited to 'addons/mail/models/mail_thread.py')
| -rw-r--r-- | addons/mail/models/mail_thread.py | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/addons/mail/models/mail_thread.py b/addons/mail/models/mail_thread.py index fd736269968..53ed1da740c 100644 --- a/addons/mail/models/mail_thread.py +++ b/addons/mail/models/mail_thread.py @@ -829,11 +829,13 @@ class MailThread(models.AbstractModel): def _routing_warn(self, error_message, warn_suffix, message_id, route, raise_exception): """ Tools method used in message_route_verify: whether to log a warning or raise an error """ - full_message = _('Routing mail with Message-Id %s: route %s: %s') % (message_id, route, error_message) + short_message = _("Mailbox unavailable - %s") % error_message + full_message = ('Routing mail with Message-Id %s: route %s: %s' % + (message_id, route, error_message)) + _logger.info(full_message + (warn_suffix and '; %s' % warn_suffix or '')) if raise_exception: - raise ValueError(full_message) - else: - _logger.info(full_message + warn_suffix and '; %s' % warn_suffix or '') + # sender should not see private diagnostics info, just the error + raise ValueError(short_message) def _routing_create_bounce_email(self, email_from, body_html, message): bounce_to = tools.decode_message_header(message, 'Return-Path') or email_from @@ -1387,6 +1389,7 @@ class MailThread(models.AbstractModel): node.getparent().remove(node) if postprocessed: body = etree.tostring(root, pretty_print=False, encoding='UTF-8') + body = pycompat.to_native(body) return body, attachments def _message_extract_payload(self, message, save_original=False): @@ -1495,10 +1498,8 @@ class MailThread(models.AbstractModel): 'message_type': 'email', } if not isinstance(message, Message): - # message_from_string works on a native str, so on py2 we need to - # encode incoming unicode strings - if pycompat.PY2 and not isinstance(message, str): - message = message.encode('utf-8') + # message_from_string works on a native str + message = pycompat.to_native(message) message = email.message_from_string(message) message_id = message['message-id'] |
