From 3c5be9f4603f966e88ee5c82cba6699f12090264 Mon Sep 17 00:00:00 2001 From: Jahongir Qurbonov Date: Wed, 23 Oct 2024 12:49:49 +0500 Subject: [PATCH] Refactor step --- client/src/telethon/_impl/mtsender/sender.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/client/src/telethon/_impl/mtsender/sender.py b/client/src/telethon/_impl/mtsender/sender.py index c7bcf428..fcad40f0 100644 --- a/client/src/telethon/_impl/mtsender/sender.py +++ b/client/src/telethon/_impl/mtsender/sender.py @@ -244,10 +244,7 @@ class Sender: if not self._reading: self._reading = True - self._response_event.clear() await self._try_read() - self._try_timeout_ping() - self._response_event.set() self._reading = False else: await self._response_event.wait() @@ -258,6 +255,8 @@ class Sender: return updates async def _try_read(self) -> None: + self._response_event.clear() + try: async with asyncio.timeout(PING_DELAY): recv_data = await self._reader.read(MAXIMUM_DATA) @@ -265,6 +264,9 @@ class Sender: pass else: self._on_net_read(recv_data) + finally: + self._try_timeout_ping() + self._response_event.set() def _try_fill_write(self) -> None: for request in self._requests: