diff options
author | dgp <dgp@users.sourceforge.net> | 2016-05-10 16:03:13 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2016-05-10 16:03:13 (GMT) |
commit | 08df07894566ad1a3cf2dc750ab9322761ee400f (patch) | |
tree | 620e18d988e661349d957eb09da1777d21f4b2f9 /generic/tclCompExpr.c | |
parent | 20baf86d1e03655bb6d7fae562091e95fe52db15 (diff) | |
parent | 313d238fb894ff0775f40ec5aee77627742a3b1b (diff) | |
download | tcl-08df07894566ad1a3cf2dc750ab9322761ee400f.zip tcl-08df07894566ad1a3cf2dc750ab9322761ee400f.tar.gz tcl-08df07894566ad1a3cf2dc750ab9322761ee400f.tar.bz2 |
merge trunkdgp_dup_encoding_fix
Diffstat (limited to 'generic/tclCompExpr.c')
-rw-r--r-- | generic/tclCompExpr.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/generic/tclCompExpr.c b/generic/tclCompExpr.c index 4390282..654666a 100644 --- a/generic/tclCompExpr.c +++ b/generic/tclCompExpr.c @@ -2181,7 +2181,6 @@ ExecConstantExprTree( CompileEnv *envPtr; ByteCode *byteCodePtr; int code; - Tcl_Obj *byteCodeObj = Tcl_NewObj(); NRE_callback *rootPtr = TOP_CB(interp); /* @@ -2195,14 +2194,12 @@ ExecConstantExprTree( CompileExprTree(interp, nodes, index, litObjvPtr, NULL, NULL, envPtr, 0 /* optimize */); TclEmitOpcode(INST_DONE, envPtr); - Tcl_IncrRefCount(byteCodeObj); - TclInitByteCodeObj(byteCodeObj, envPtr); + byteCodePtr = TclInitByteCode(envPtr); TclFreeCompileEnv(envPtr); TclStackFree(interp, envPtr); - byteCodePtr = byteCodeObj->internalRep.twoPtrValue.ptr1; TclNRExecuteByteCode(interp, byteCodePtr); code = TclNRRunCallbacks(interp, TCL_OK, rootPtr); - Tcl_DecrRefCount(byteCodeObj); + TclReleaseByteCode(byteCodePtr); return code; } |