diff --git a/addons/mail/static/src/core_ui/message.js b/addons/mail/static/src/core_ui/message.js index 7b6b6cce0b2..51b10a83ec6 100644 --- a/addons/mail/static/src/core_ui/message.js +++ b/addons/mail/static/src/core_ui/message.js @@ -156,7 +156,7 @@ export class Message extends Component { get authorAvatarUrl() { if ( this.message.type === "email" && - !["partner", "guest"].includes(this.message.author.type) + !["partner", "guest"].includes(this.message.author?.type) ) { return url("/mail/static/src/img/email_icon.png"); } diff --git a/addons/mail/static/tests/message/message_tests.js b/addons/mail/static/tests/message/message_tests.js index 97964fc8e44..6ffb3524211 100644 --- a/addons/mail/static/tests/message/message_tests.js +++ b/addons/mail/static/tests/message/message_tests.js @@ -1400,3 +1400,22 @@ QUnit.test("Mark as unread", async (assert) => { assert.containsOnce($, ".o-mail-Thread-newMessage"); assert.containsOnce($, ".o-mail-DiscussCategoryItem .badge:contains(1)"); }); + +QUnit.test("Avatar of unknown author", async (assert) => { + const pyEnv = await startServer(); + pyEnv["mail.message"].create({ + body: "
Want to know features and benefits of using the new software.
", + email_from: "md@oilcompany.fr", + message_type: "email", + subject: "Need Details", + model: "res.partner", + res_id: pyEnv.currentPartnerId, + author_id: null, + }); + const { openFormView } = await start(); + await openFormView("res.partner", pyEnv.currentPartnerId); + assert.containsOnce( + $, + ".o-mail-Message-avatar[data-src*='mail/static/src/img/email_icon.png']" + ); +});