summaryrefslogtreecommitdiffstats
path: root/generic/tclExecute.c
diff options
context:
space:
mode:
authorgriffin <briang42@easystreet.net>2023-06-20 22:16:54 (GMT)
committergriffin <briang42@easystreet.net>2023-06-20 22:16:54 (GMT)
commit172063cace8ef1cb14c55679c1fac5da6eef0418 (patch)
treee506d79101e733767bacb5567657c70d1fab9236 /generic/tclExecute.c
parent2e4b97b87fabf8eec9beca9268ffad00cae7a5dd (diff)
downloadtcl-172063cace8ef1cb14c55679c1fac5da6eef0418.zip
tcl-172063cace8ef1cb14c55679c1fac5da6eef0418.tar.gz
tcl-172063cace8ef1cb14c55679c1fac5da6eef0418.tar.bz2
Fix bug in TEBC foreach with abstractlists
Diffstat (limited to 'generic/tclExecute.c')
-rw-r--r--generic/tclExecute.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index 336815d..2be02c6 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -6451,7 +6451,9 @@ TEBCresume(
varListPtr = infoPtr->varLists[i];
numVars = varListPtr->numVars;
listPtr = OBJ_AT_DEPTH(listTmpDepth);
+ DECACHE_STACK_INFO();
if (TclListObjLengthM(interp, listPtr, &listLen) != TCL_OK) {
+ CACHE_STACK_INFO();
TRACE_APPEND(("ERROR converting list %" TCL_Z_MODIFIER "d, \"%s\": %s",
i, O2S(listPtr), O2S(Tcl_GetObjResult(interp))));
goto gotError;
@@ -6537,11 +6539,14 @@ TEBCresume(
numVars = varListPtr->numVars;
listPtr = OBJ_AT_DEPTH(listTmpDepth);
+ DECACHE_STACK_INFO();
status = TclListObjGetElementsM(
interp, listPtr, &listLen, &elements);
if (status != TCL_OK) {
+ CACHE_STACK_INFO();
goto gotError;
}
+ CACHE_STACK_INFO();
valIndex = (iterNum * numVars);