From 683f9be971b2d2e4c45c40b3b2dee88cdbcd3e4f Mon Sep 17 00:00:00 2001 From: "Didier (did)" Date: Tue, 6 Sep 2022 10:09:00 +0000 Subject: [PATCH] [FIX] mail: fix traceback with empty message body MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This PR fix a traceback that occure when the message body is empty (eg: only uploading an attachment). closes odoo/odoo#99625 Signed-off-by: Sébastien Theys (seb) --- addons/mail/models/mail_link_preview.py | 2 ++ addons/mail/static/src/models/composer_view.js | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/addons/mail/models/mail_link_preview.py b/addons/mail/models/mail_link_preview.py index 6377734e06b..51b32725a2d 100644 --- a/addons/mail/models/mail_link_preview.py +++ b/addons/mail/models/mail_link_preview.py @@ -26,6 +26,8 @@ class LinkPreview(models.Model): @api.model def _create_link_previews(self, message): + if not message.body: + return tree = html.fromstring(message.body) urls = tree.xpath('//a/@href') link_previews = self.env['mail.link.preview'] diff --git a/addons/mail/static/src/models/composer_view.js b/addons/mail/static/src/models/composer_view.js index dc8ab35ff52..a307ac73ca4 100644 --- a/addons/mail/static/src/models/composer_view.js +++ b/addons/mail/static/src/models/composer_view.js @@ -573,7 +573,7 @@ registerModel({ const message = messaging.models['Message'].insert( messaging.models['Message'].convertData(messageData) ); - if (this.messaging.hasLinkPreviewFeature) { + if (this.messaging.hasLinkPreviewFeature && !message.isBodyEmpty) { this.messaging.rpc({ route: `/mail/link_preview`, params: {