diff --git a/addons/mail/models/ir_attachment.py b/addons/mail/models/ir_attachment.py index 92e9e29804d..3661ef336cc 100644 --- a/addons/mail/models/ir_attachment.py +++ b/addons/mail/models/ir_attachment.py @@ -58,6 +58,9 @@ class IrAttachment(models.Model): 'name': attachment.name, 'mimetype': 'application/octet-stream' if safari and attachment.mimetype and 'video' in attachment.mimetype else attachment.mimetype, } + if attachment.res_id and issubclass(self.pool[attachment.res_model], self.pool['mail.thread']): + main_attachment = self.env[attachment.res_model].sudo().browse(attachment.res_id).message_main_attachment_id + res['is_main'] = attachment == main_attachment if commands: res['originThread'] = [('insert', { 'id': attachment.res_id, diff --git a/addons/mail/models/mail_message.py b/addons/mail/models/mail_message.py index daca9e6e019..a0403666a97 100644 --- a/addons/mail/models/mail_message.py +++ b/addons/mail/models/mail_message.py @@ -845,12 +845,7 @@ class Message(models.Model): author = (0, message_sudo.email_from) # Attachments - main_attachment = self.env['ir.attachment'] - if message_sudo.attachment_ids and message_sudo.res_id and issubclass(self.pool[message_sudo.model], self.pool['mail.thread']): - main_attachment = self.env[message_sudo.model].sudo().browse(message_sudo.res_id).message_main_attachment_id attachments_formatted = message_sudo.attachment_ids._attachment_format() - for attachment in attachments_formatted: - attachment['is_main'] = attachment['id'] == main_attachment.id # Tracking values tracking_value_ids = [] for tracking in message_sudo.tracking_value_ids: