From 8612a64b3c7b5c6c58c56a8fb9a6069627ffd017 Mon Sep 17 00:00:00 2001 From: monte-monte <6649967+monte-monte@users.noreply.github.com> Date: Sun, 14 Mar 2021 20:40:52 +0200 Subject: [PATCH] Update builtin.py (#510) * Update builtin.py In StateFilter check if object is CallbackQuery because it has different structure compared to simple message. This change prevents https://github.com/aiogram/aiogram/issues/508 bug. * Update aiogram/dispatcher/filters/builtin.py Co-authored-by: Alex Root Junior --- aiogram/dispatcher/filters/builtin.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/aiogram/dispatcher/filters/builtin.py b/aiogram/dispatcher/filters/builtin.py index ded3e9fd..762c8505 100644 --- a/aiogram/dispatcher/filters/builtin.py +++ b/aiogram/dispatcher/filters/builtin.py @@ -529,6 +529,8 @@ class StateFilter(BoundFilter): self.states = states def get_target(self, obj): + if isinstance(obj, CallbackQuery): + return getattr(getattr(getattr(obj, 'message', None),'chat', None), 'id', None), getattr(getattr(obj, 'from_user', None), 'id', None) return getattr(getattr(obj, 'chat', None), 'id', None), getattr(getattr(obj, 'from_user', None), 'id', None) async def check(self, obj):