From 096b2a6f7a928af92921b9e1cfcc3cf9e46d5f4e Mon Sep 17 00:00:00 2001 From: Terrance Date: Mon, 23 Apr 2018 08:49:30 +0100 Subject: [PATCH] Cancel background tasks on disconnect (#783) Fixes #782. --- telethon/telegram_bare_client.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/telethon/telegram_bare_client.py b/telethon/telegram_bare_client.py index 9192d4df..65f7dc88 100644 --- a/telethon/telegram_bare_client.py +++ b/telethon/telegram_bare_client.py @@ -253,6 +253,15 @@ class TelegramBareClient: __log__.info('Disconnecting...') self._user_connected = False self._sender.disconnect() + if self._recv_loop: + self._recv_loop.cancel() + self._recv_loop = None + if self._ping_loop: + self._ping_loop.cancel() + self._ping_loop = None + if self._state_loop: + self._state_loop.cancel() + self._state_loop = None # TODO Shall we clear the _exported_sessions, or may be reused? self._first_request = True # On reconnect it will be first again self.session.close()