From bfcd3ff6ea90285b9a4c8fbcac7a08c281a5387e Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Mon, 27 Jan 2020 22:44:36 +0100 Subject: improve command detection heuristics this fixes #3794 --- mitmproxy/command.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mitmproxy/command.py b/mitmproxy/command.py index bfec47e1..49cb959e 100644 --- a/mitmproxy/command.py +++ b/mitmproxy/command.py @@ -149,9 +149,10 @@ class CommandManager: if not i.startswith("__"): o = getattr(addon, i) try: - is_command = hasattr(o, "command_name") + # hasattr is not enough, see https://github.com/mitmproxy/mitmproxy/issues/3794 + is_command = isinstance(getattr(o, "command_name", None), str) except Exception: - pass # hasattr may raise if o implements __getattr__. + pass # getattr may raise if o implements __getattr__. else: if is_command: try: -- cgit v1.2.3