summaryrefslogtreecommitdiffstats
path: root/generic/tclInterp.c
diff options
context:
space:
mode:
authordgp <dgp@noemail.net>2013-04-11 14:39:56 (GMT)
committerdgp <dgp@noemail.net>2013-04-11 14:39:56 (GMT)
commit8c6a30c6ae6550a444ceea394eb16aba38ed8435 (patch)
treefde79e95ade9c60439157c28fd46c4a1ec8d41ac /generic/tclInterp.c
parent70e810868172885ee9d97299ff0cd9bd9c899a8f (diff)
downloadtcl-8c6a30c6ae6550a444ceea394eb16aba38ed8435.zip
tcl-8c6a30c6ae6550a444ceea394eb16aba38ed8435.tar.gz
tcl-8c6a30c6ae6550a444ceea394eb16aba38ed8435.tar.bz2
New internal routine TclNRInvoke() - NR-enabled path through the machinery
behind invokehidden commands. FossilOrigin-Name: db2d5a1b579cba6a37e246778b99d2f404993453
Diffstat (limited to 'generic/tclInterp.c')
-rw-r--r--generic/tclInterp.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/generic/tclInterp.c b/generic/tclInterp.c
index 1a4297b..ac51d9d 100644
--- a/generic/tclInterp.c
+++ b/generic/tclInterp.c
@@ -3052,7 +3052,12 @@ SlaveInvokeHidden(
Tcl_AllowExceptions(slaveInterp);
if (namespaceName == NULL) {
- result = TclObjInvoke(slaveInterp, objc, objv, TCL_INVOKE_HIDDEN);
+ if (interp == slaveInterp) {
+ Tcl_Release(slaveInterp);
+ return TclNRInvoke(NULL, slaveInterp, objc, objv);
+ } else {
+ result = TclObjInvoke(slaveInterp, objc, objv, TCL_INVOKE_HIDDEN);
+ }
} else {
Namespace *nsPtr, *dummy1, *dummy2;
const char *tail;