summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2020-09-04 06:04:47 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2020-09-04 06:04:47 (GMT)
commitdb325590a751eae6a25ee6ba9f749ba499ff2078 (patch)
treefbff4496a0c7879d7a4a1c701da57dfce773de5e
parent9f309d56cc2544def77f3c913d28aa1c1f8e2e14 (diff)
downloadtcl-db325590a751eae6a25ee6ba9f749ba499ff2078.zip
tcl-db325590a751eae6a25ee6ba9f749ba499ff2078.tar.gz
tcl-db325590a751eae6a25ee6ba9f749ba499ff2078.tar.bz2
Protect INST_STR_REPLACE too
-rw-r--r--generic/tclExecute.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index 3d39e89..6c631e2 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -5444,14 +5444,17 @@ TEBCresume(
endIdx = Tcl_GetCharLength(valuePtr) - 1;
TRACE(("\"%.20s\" %s %s \"%.20s\" => ", O2S(valuePtr),
O2S(OBJ_UNDER_TOS), O2S(OBJ_AT_TOS), O2S(value3Ptr)));
+ DECACHE_STACK_INFO();
if (TclGetIntForIndexM(interp, OBJ_UNDER_TOS, endIdx,
&fromIdx) != TCL_OK
|| TclGetIntForIndexM(interp, OBJ_AT_TOS, endIdx,
&toIdx) != TCL_OK) {
+ CACHE_STACK_INFO();
TclDecrRefCount(value3Ptr);
TRACE_ERROR(interp);
goto gotError;
}
+ CACHE_STACK_INFO();
TclDecrRefCount(OBJ_AT_TOS);
(void) POP_OBJECT();
TclDecrRefCount(OBJ_AT_TOS);