From a66df977f7b0ff7f6b938ac2b0db32e105bec009 Mon Sep 17 00:00:00 2001 From: Lonami Exo Date: Wed, 14 Sep 2022 15:52:09 +0200 Subject: [PATCH] Fix UpdateShort from socket was not unboxed This was causing UpdateShorts to be sent to Raw handlers, which in turn broke things like QR login. Should fix #3922. --- telethon/_updates/messagebox.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/telethon/_updates/messagebox.py b/telethon/_updates/messagebox.py index 0d472265..4f17d4bb 100644 --- a/telethon/_updates/messagebox.py +++ b/telethon/_updates/messagebox.py @@ -392,7 +392,9 @@ class MessageBox: seq_start = getattr(updates, 'seq_start', None) or seq users = getattr(updates, 'users', None) or [] chats = getattr(updates, 'chats', None) or [] - updates = getattr(updates, 'updates', None) or [updates] + + # updateShort is the only update which cannot be dispatched directly but doesn't have 'updates' field + updates = getattr(updates, 'updates', None) or [updates.update if isinstance(updates, tl.UpdateShort) else updates] for u in updates: u._self_outgoing = self_outgoing