summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--ryu/base/app_manager.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/ryu/base/app_manager.py b/ryu/base/app_manager.py
index d433c59a..695c401e 100644
--- a/ryu/base/app_manager.py
+++ b/ryu/base/app_manager.py
@@ -226,9 +226,10 @@ class RyuApp(object):
return handlers
def test(h):
- if ev_cls not in h.callers:
- # this handler does not listen the event.
- return False
+ if not hasattr(h, 'callers') or ev_cls not in h.callers:
+ # dynamically registered handlers does not have
+ # h.callers element for the event.
+ return True
states = h.callers[ev_cls].dispatchers
if not states:
# empty states means all states