summaryrefslogtreecommitdiffstats
path: root/generic/tclTrace.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2013-02-19 13:21:53 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2013-02-19 13:21:53 (GMT)
commit9279b3aad8ae6175e5238ffd10a05652a2f56c93 (patch)
tree955c6b8b15d8417069cb3dee3fec6de247795f4e /generic/tclTrace.c
parent9d856256a392f919a13d4dc2171dcbdf4c39e31c (diff)
parent3eafe75fbc925da366e32a959d479a254ebfc02a (diff)
downloadtcl-9279b3aad8ae6175e5238ffd10a05652a2f56c93.zip
tcl-9279b3aad8ae6175e5238ffd10a05652a2f56c93.tar.gz
tcl-9279b3aad8ae6175e5238ffd10a05652a2f56c93.tar.bz2
Merge trunk.
Tranform Tcl_SaveResult/Tcl_RestoreResult/Tcl_DiscardResult to macros, and remove them from the stub table
Diffstat (limited to 'generic/tclTrace.c')
-rw-r--r--generic/tclTrace.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/generic/tclTrace.c b/generic/tclTrace.c
index cdebe03..faa0444 100644
--- a/generic/tclTrace.c
+++ b/generic/tclTrace.c
@@ -1485,7 +1485,11 @@ TclCheckExecutionTraces(
}
iPtr->activeCmdTracePtr = active.nextPtr;
if (state) {
- Tcl_RestoreInterpState(interp, state);
+ if (traceCode == TCL_OK) {
+ (void) Tcl_RestoreInterpState(interp, state);
+ } else {
+ Tcl_DiscardInterpState(state);
+ }
}
return traceCode;