From 2423d2bb8907bc5f127a91c4a83bb76c63ba510e Mon Sep 17 00:00:00 2001 From: Raiden Sakura Date: Sun, 14 Jul 2024 18:19:33 +0800 Subject: [PATCH] Fix schedule thread closure --- core/thread.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/core/thread.py b/core/thread.py index 6010c8eef3..82f27c1fdd 100644 --- a/core/thread.py +++ b/core/thread.py @@ -385,10 +385,7 @@ def _format_info_embed(self, user, log_url, log_count, color): async def _close_after(self, after, closer, silent, delete_channel, message): await asyncio.sleep(after) - timeout = self.bot.config.get("thread_auto_close") - if timeout != isodate.Duration(): - return self.bot.loop.create_task(self._close(closer, silent, delete_channel, message, True)) - logger.debug("Cancelling thread auto close task due to disabled thread_auto_close") + return self.bot.loop.create_task(self._close(closer, silent, delete_channel, message, True)) async def close( self, @@ -431,6 +428,14 @@ async def close( await self._close(closer, silent, delete_channel, message) async def _close(self, closer, silent=False, delete_channel=True, message=None, scheduled=False): + + if ( + scheduled + and closer.id == self.bot.user.id + and self.bot.config.get("thread_auto_close") == isodate.Duration() + ): + return logger.info("Thread auto close cancelled due to disabled thread_auto_close") + try: self.manager.cache.pop(self.id) except KeyError as e: