diff --git a/aiogram/dispatcher/handler.py b/aiogram/dispatcher/handler.py index c721369b..8972958c 100644 --- a/aiogram/dispatcher/handler.py +++ b/aiogram/dispatcher/handler.py @@ -60,7 +60,11 @@ class Handler: results = [] if self.middleware_key: - await self.dispatcher.middleware.trigger(f"pre_process_{self.middleware_key}", args) + try: + await self.dispatcher.middleware.trigger(f"pre_process_{self.middleware_key}", args) + except CancelHandler: # Allow to cancel current event + return results + for filters, handler in self.handlers: if await check_filters(filters, args): try: