From: Leandro Lucarella Date: Wed, 10 Oct 2007 20:19:18 +0000 (-0300) Subject: Bugfix: skip SubHandlers parent when looking for a handler/command/help. X-Git-Url: https://git.llucax.com/software/pymin.git/commitdiff_plain/c01ba517671f8678d39b32230331ed71cac7354f?hp=411e573917552a233a9f9752b511396e141c1265 Bugfix: skip SubHandlers parent when looking for a handler/command/help. --- diff --git a/pymin/dispatcher.py b/pymin/dispatcher.py index 7e918bd..17075a3 100644 --- a/pymin/dispatcher.py +++ b/pymin/dispatcher.py @@ -202,10 +202,13 @@ class Handler: d = dict() for a in dir(self): h = getattr(self, a) + if a == 'parent': continue # Skip parents in SubHandlers if is_handler(h) or isinstance(h, Handler): d[a] = h.handler_help return d # A command was specified + if command == 'parent': # Skip parents in SubHandlers + raise HelpNotFoundError(command) if not hasattr(self, command.encode('utf-8')): raise HelpNotFoundError(command) handler = getattr(self, command.encode('utf-8')) @@ -442,6 +445,8 @@ class Dispatcher: raise CommandIsAHandlerError(command) raise CommandNotFoundError(command) command.append(route[0]) + if route[0] == 'parent': + raise CommandNotFoundError(command) if not hasattr(handler, route[0].encode('utf-8')): if isinstance(handler, Handler) and len(command) > 1: raise CommandNotInHandlerError(command)