From 8a4ecc7b96b5922f28af4cf66ab4af3f1dcd21b0 Mon Sep 17 00:00:00 2001 From: Butvin Mihail Date: Mon, 31 Oct 2022 09:43:03 +0300 Subject: [PATCH] Fix Handler unregister Add checking for handler_obj.handler --- aiogram/dispatcher/handler.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/aiogram/dispatcher/handler.py b/aiogram/dispatcher/handler.py index e6b89380cb..6fa00c25e3 100644 --- a/aiogram/dispatcher/handler.py +++ b/aiogram/dispatcher/handler.py @@ -74,11 +74,12 @@ def unregister(self, handler): :param handler: callback :return: """ + for handler_obj in self.handlers: - registered = handler_obj.handler - if handler in self.handlers: - self.handlers.remove(handler) + if handler == handler_obj or handler == handler_obj.handler: + self.handlers.remove(handler_obj) return True + raise ValueError('This handler is not registered!') async def notify(self, *args):