From 4defa9775ec2079a84416cd651ee024473a410ee Mon Sep 17 00:00:00 2001 From: Nico Alt <nicoalt@posteo.org> Date: Sat, 18 Jul 2020 12:15:37 -0400 Subject: [PATCH] Don't expect messages to always have text Some messages are notices that don't carry any text (responses to forum invitations for example). ``` Traceback (most recent call last): File "/usr/share/briar-gtk/briar_gtk/containers/private_chat.py", line 101, in _add_message message_widget = PrivateMessageWidget(self._contact_name, message) File "/usr/share/briar-gtk/briar_gtk/widgets/private_message.py", line 18, in __init__ self._setup_view(contact_name, message) File "/usr/share/briar-gtk/briar_gtk/widgets/private_message.py", line 34, in _setup_view message["text"]) KeyError: 'text' ``` Fixes #56. --- briar-gtk/briar_gtk/containers/private_chat.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/briar-gtk/briar_gtk/containers/private_chat.py b/briar-gtk/briar_gtk/containers/private_chat.py index cac2453..bea6ab7 100644 --- a/briar-gtk/briar_gtk/containers/private_chat.py +++ b/briar-gtk/briar_gtk/containers/private_chat.py @@ -98,9 +98,15 @@ class PrivateChatContainer(Container): self._signals.append(signal_id) def _add_message(self, message): + if self._is_not_message(message): + return message_widget = PrivateMessageWidget(self._contact_name, message) self._messages_box.add(message_widget) + @staticmethod + def _is_not_message(message): + return "text" not in message + def _add_message_async(self, message): if message["data"]["contactId"] == self._contact_id: GLib.idle_add(self._add_message_and_scroll, message["data"]) -- GitLab