Description: |
This has been reproduced with ActiveState releases 8.6.5 and 8.6.6
The following script causes a segmentation fault (core dump).
Unsure of the category (don't know if it's OO or uplevel), please assign the category appropriately.
# ---------------begin script-------------------
package require Itcl
proc ::try_uplevel {} {
return [uplevel 1 [list ::info vars _u_defer_var]]
}
itcl::class ::test_class {
constructor {} {}
public proc test_via_proc {} {
::try_uplevel
}
}
::test_class::test_via_proc
# ---------------end script-------------------
The problem is that the Tcl core code is getting a null pointer and dereferencing it in tclVar.c, AppendLocals(....)
if (iPtr->varFramePtr->isProcCallFrame & FRAME_IS_METHOD) {
CallContext *contextPtr = iPtr->varFramePtr->clientData;
Method *mPtr = contextPtr->callPtr->chain[contextPtr->index].mPtr;
the contextPtr is null.
|