summaryrefslogtreecommitdiffstats
path: root/generic/tclExecute.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2020-09-02 20:50:43 (GMT)
committerdgp <dgp@users.sourceforge.net>2020-09-02 20:50:43 (GMT)
commit9f309d56cc2544def77f3c913d28aa1c1f8e2e14 (patch)
treed62c6081871ce66bcd04c168e5c8e1666201b034 /generic/tclExecute.c
parent712f88bef73db43ea3e8169d8c5609ec420b3bf2 (diff)
downloadtcl-9f309d56cc2544def77f3c913d28aa1c1f8e2e14.zip
tcl-9f309d56cc2544def77f3c913d28aa1c1f8e2e14.tar.gz
tcl-9f309d56cc2544def77f3c913d28aa1c1f8e2e14.tar.bz2
Tests string-12.2[45].* and fixes to INST_STRING_RANGE.
Diffstat (limited to 'generic/tclExecute.c')
-rw-r--r--generic/tclExecute.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index 890ce08..3d39e89 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -5347,13 +5347,21 @@ TEBCresume(
TRACE(("\"%.20s\" %.20s %.20s =>",
O2S(OBJ_AT_DEPTH(2)), O2S(OBJ_UNDER_TOS), O2S(OBJ_AT_TOS)));
length = Tcl_GetCharLength(OBJ_AT_DEPTH(2)) - 1;
+
+ DECACHE_STACK_INFO();
if (TclGetIntForIndexM(interp, OBJ_UNDER_TOS, length,
- &fromIdx) != TCL_OK
- || TclGetIntForIndexM(interp, OBJ_AT_TOS, length,
+ &fromIdx) != TCL_OK) {
+ CACHE_STACK_INFO();
+ TRACE_ERROR(interp);
+ goto gotError;
+ }
+ if (TclGetIntForIndexM(interp, OBJ_AT_TOS, length,
&toIdx) != TCL_OK) {
+ CACHE_STACK_INFO();
TRACE_ERROR(interp);
goto gotError;
}
+ CACHE_STACK_INFO();
if (fromIdx < 0) {
fromIdx = 0;