diff options
Diffstat (limited to 'generic/tclExecute.c')
-rw-r--r-- | generic/tclExecute.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c index 0de8e3c..8fb8e63 100644 --- a/generic/tclExecute.c +++ b/generic/tclExecute.c @@ -2424,11 +2424,6 @@ TclExecuteByteCode( if (result == TCL_OK) { Tcl_Obj *objPtr; -#ifndef TCL_COMPILE_DEBUG - if (*(pc+pcAdjustment) == INST_POP) { - NEXT_INST_V((pcAdjustment+1), objc, 0); - } -#endif /* * Push the call's object result and continue execution with * the next instruction. @@ -2455,6 +2450,12 @@ TclExecuteByteCode( TclNewObj(objPtr); Tcl_IncrRefCount(objPtr); iPtr->objResultPtr = objPtr; +#ifndef TCL_COMPILE_DEBUG + if (*(pc+pcAdjustment) == INST_POP) { + TclDecrRefCount(objResultPtr); + NEXT_INST_V((pcAdjustment+1), objc, 0); + } +#endif NEXT_INST_V(pcAdjustment, objc, -1); } else { cleanup = objc; |