summaryrefslogtreecommitdiffstats
path: root/generic/tclCmdAH.c
diff options
context:
space:
mode:
authorMiguel Sofer <miguel.sofer@gmail.com>2016-01-28 22:48:41 (GMT)
committerMiguel Sofer <miguel.sofer@gmail.com>2016-01-28 22:48:41 (GMT)
commitf8de35dc24321fc9fecc9696574396c9e47a73dc (patch)
treebb46a44fc02ec53221bc5bcb65311d70c1fabe86 /generic/tclCmdAH.c
parent92c65512687b42a7e97916db775e08be6f8b62ca (diff)
downloadtcl-f8de35dc24321fc9fecc9696574396c9e47a73dc.zip
tcl-f8de35dc24321fc9fecc9696574396c9e47a73dc.tar.gz
tcl-f8de35dc24321fc9fecc9696574396c9e47a73dc.tar.bz2
tiny mods
Diffstat (limited to 'generic/tclCmdAH.c')
-rw-r--r--generic/tclCmdAH.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/generic/tclCmdAH.c b/generic/tclCmdAH.c
index 6f02f3b..698782a 100644
--- a/generic/tclCmdAH.c
+++ b/generic/tclCmdAH.c
@@ -226,7 +226,7 @@ CatchObjCmdCallback(
Tcl_ResetResult(interp);
Tcl_SetObjResult(interp, Tcl_NewIntObj(result));
- return TCL_OK;
+ NRE_NEXT(TCL_OK);
}
/*
@@ -2329,17 +2329,18 @@ ForCondCallback(
}
Tcl_DecrRefCount(boolObj);
- if (value) {
- if (/*next*/ data[2]) {
- TclNRAddCallback(interp, ForNextCallback, data[0], data[1],
- data[2], NULL);
- } else {
- TclNRAddCallback(interp, TclNRForIterCallback, data[0], data[1],
- data[2], NULL);
- }
- return TclNREvalObjEx(interp, /*body*/ data[1], 0);
+ if (!value) {
+ NRE_NEXT(result);
}
- NRE_NEXT(result);
+
+ if (/*next*/ data[2]) {
+ TclNRAddCallback(interp, ForNextCallback, data[0], data[1],
+ data[2], NULL);
+ } else {
+ TclNRAddCallback(interp, TclNRForIterCallback, data[0], data[1],
+ data[2], NULL);
+ }
+ return TclNREvalObjEx(interp, /*body*/ data[1], 0);
}
static int