diff options
| author | pooryorick <com.digitalsmarties@pooryorick.com> | 2018-06-24 07:17:46 (GMT) |
|---|---|---|
| committer | pooryorick <com.digitalsmarties@pooryorick.com> | 2018-06-24 07:17:46 (GMT) |
| commit | e2a79c2604e79b36ec065a7bb44ec57eaca5ed8a (patch) | |
| tree | 6707ed6c69109f2645186529a7ef950289d0556a /generic/tclBasic.c | |
| parent | 6cbfdcc4a338d5b7348ee7e65a7710d13f9bc27e (diff) | |
| download | tcl-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.c | 8 |
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; |
