From bd90c726b5e5fc06735ab98fa1d42da56a9f7cd7 Mon Sep 17 00:00:00 2001 From: Alex Root Junior Date: Mon, 14 Oct 2019 14:53:12 +0300 Subject: [PATCH] Fix Bot.__del__ for cases when event loop is closed --- aiogram/bot/base.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/aiogram/bot/base.py b/aiogram/bot/base.py index 608abd06..8cc64e33 100644 --- a/aiogram/bot/base.py +++ b/aiogram/bot/base.py @@ -100,10 +100,13 @@ class BaseBot: self.parse_mode = parse_mode def __del__(self): + if not hasattr(self, 'loop'): + return if self.loop.is_running(): self.loop.create_task(self.close()) - else: - self.loop.run_until_complete(self.close()) + return + loop = asyncio.new_event_loop() + loop.run_until_complete(self.close()) @staticmethod def _prepare_timeout(