diff options
author | dgp <dgp@users.sourceforge.net> | 2016-06-28 22:30:18 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2016-06-28 22:30:18 (GMT) |
commit | 23a0290873b671c61ba3bc112ffc158fb859667a (patch) | |
tree | 9405168e88fadae774bff8ed265edeb3f236bfcc /generic/tclExecute.c | |
parent | 00357e27055dd3b3dcc2b853833731d6db76c137 (diff) | |
parent | edc450c53752cf92b00a45883fee2d66a2bde27c (diff) | |
download | tcl-23a0290873b671c61ba3bc112ffc158fb859667a.zip tcl-23a0290873b671c61ba3bc112ffc158fb859667a.tar.gz tcl-23a0290873b671c61ba3bc112ffc158fb859667a.tar.bz2 |
Route all ensemble rewrite activity through a few utility routines.
Diffstat (limited to 'generic/tclExecute.c')
-rw-r--r-- | generic/tclExecute.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c index 3f57333..0a6e60e 100644 --- a/generic/tclExecute.c +++ b/generic/tclExecute.c @@ -2074,6 +2074,8 @@ TclNRExecuteByteCode( * Push the callback for bytecode execution */ + TclResetRewriteEnsemble(interp, 1); + TclNRAddCallback(interp, TEBCresume, TD, /* pc */ NULL, /* cleanup */ INT2PTR(0), NULL); return TCL_OK; @@ -3172,9 +3174,8 @@ TEBCresume( if (iPtr->flags & INTERP_DEBUG_FRAME) { ArgumentBCEnter(interp, codePtr, TD, pc, objc, objv); } - iPtr->ensembleRewrite.sourceObjs = objv; - iPtr->ensembleRewrite.numRemovedObjs = opnd; - iPtr->ensembleRewrite.numInsertedObjs = 1; + + TclInitRewriteEnsemble(interp, opnd, 1, objv); DECACHE_STACK_INFO(); pc += 6; TEBC_YIELD(); |