From 65e370f93b715a314a96e349f5088ce6ac08a107 Mon Sep 17 00:00:00 2001 From: Griatch Date: Wed, 20 Feb 2013 00:17:50 +0100 Subject: [PATCH] Added an abort condition to the cmd's funcparts chain. --- src/commands/cmdhandler.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/commands/cmdhandler.py b/src/commands/cmdhandler.py index c9dd47aea..4af60fe2d 100644 --- a/src/commands/cmdhandler.py +++ b/src/commands/cmdhandler.py @@ -273,7 +273,9 @@ def cmdhandler(caller, raw_string, testing=False): if hasattr(cmd, "funcparts"): # yield on command parts (for multi-part delayed commands) for funcpart in make_iter(cmd.funcparts): - yield funcpart() + err = yield funcpart() + # returning anything but a deferred/None will kill the chain + if err: break # post-command hook yield cmd.at_post_cmd()