mirror of
https://github.com/chatmail/core.git
synced 2026-05-03 05:16:28 +03:00
fix(python): _map_ffi_event: Always check if get_message_by_id() returned None
As trashed messages can't be loaded from the db now, `get_message_by_id()` returns None in some tests e.g. in `test_deleted_msgs_dont_reappear()`. A `PerAccount` hook shouldn't be called if so.
This commit is contained in:
@@ -328,10 +328,12 @@ class EventThread(threading.Thread):
|
|||||||
elif name == "DC_EVENT_REACTIONS_CHANGED":
|
elif name == "DC_EVENT_REACTIONS_CHANGED":
|
||||||
assert ffi_event.data1 > 0
|
assert ffi_event.data1 > 0
|
||||||
msg = account.get_message_by_id(ffi_event.data2)
|
msg = account.get_message_by_id(ffi_event.data2)
|
||||||
yield "ac_reactions_changed", {"message": msg}
|
if msg is not None:
|
||||||
|
yield "ac_reactions_changed", {"message": msg}
|
||||||
elif name == "DC_EVENT_MSG_DELIVERED":
|
elif name == "DC_EVENT_MSG_DELIVERED":
|
||||||
msg = account.get_message_by_id(ffi_event.data2)
|
msg = account.get_message_by_id(ffi_event.data2)
|
||||||
yield "ac_message_delivered", {"message": msg}
|
if msg is not None:
|
||||||
|
yield "ac_message_delivered", {"message": msg}
|
||||||
elif name == "DC_EVENT_CHAT_MODIFIED":
|
elif name == "DC_EVENT_CHAT_MODIFIED":
|
||||||
chat = account.get_chat_by_id(ffi_event.data1)
|
chat = account.get_chat_by_id(ffi_event.data1)
|
||||||
yield "ac_chat_modified", {"chat": chat}
|
yield "ac_chat_modified", {"chat": chat}
|
||||||
|
|||||||
Reference in New Issue
Block a user