From 856b9e864f3c170dcb99fff14f3532a9136d8a6e Mon Sep 17 00:00:00 2001 From: Alex Root Junior Date: Fri, 12 Jan 2018 17:44:54 +0200 Subject: [PATCH] Allow to cancel event from the Middleware.on_pre_process_ --- aiogram/dispatcher/handler.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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: