summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
diff options
context:
space:
mode:
authorpooryorick <com.digitalsmarties@pooryorick.com>2018-06-24 07:17:46 (GMT)
committerpooryorick <com.digitalsmarties@pooryorick.com>2018-06-24 07:17:46 (GMT)
commite2a79c2604e79b36ec065a7bb44ec57eaca5ed8a (patch)
tree6707ed6c69109f2645186529a7ef950289d0556a /generic/tclBasic.c
parent6cbfdcc4a338d5b7348ee7e65a7710d13f9bc27e (diff)
downloadtcl-e2a79c2604e79b36ec065a7bb44ec57eaca5ed8a.zip
tcl-e2a79c2604e79b36ec065a7bb44ec57eaca5ed8a.tar.gz
tcl-e2a79c2604e79b36ec065a7bb44ec57eaca5ed8a.tar.bz2
Fix for [3592747]: Let TclNRTailcallEval handle namespace problems.
Diffstat (limited to 'generic/tclBasic.c')
-rw-r--r--generic/tclBasic.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/generic/tclBasic.c b/generic/tclBasic.c
index 3ac3ffd..07f7e5c 100644
--- a/generic/tclBasic.c
+++ b/generic/tclBasic.c
@@ -8402,18 +8402,12 @@ TclNRTailcallObjCmd(
if (objc > 1) {
Tcl_Obj *listPtr, *nsObjPtr;
Tcl_Namespace *nsPtr = (Tcl_Namespace *) iPtr->varFramePtr->nsPtr;
- Tcl_Namespace *ns1Ptr;
/* The tailcall data is in a Tcl list: the first element is the
* namespace, the rest the command to be tailcalled. */
- listPtr = Tcl_NewListObj(objc, objv);
-
nsObjPtr = Tcl_NewStringObj(nsPtr->fullName, -1);
- if ((TCL_OK != TclGetNamespaceFromObj(interp, nsObjPtr, &ns1Ptr))
- || (nsPtr != ns1Ptr)) {
- Tcl_Panic("Tailcall failed to find the proper namespace");
- }
+ listPtr = Tcl_NewListObj(objc, objv);
TclListObjSetElement(interp, listPtr, 0, nsObjPtr);
iPtr->varFramePtr->tailcallPtr = listPtr;