summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2025-09-19 16:53:24 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2025-09-19 16:53:24 (GMT)
commitaa1e5ad38c8ed02df39d414770feac068c606178 (patch)
tree9164dc1e9b6e90c7a638607c883b3a746cd7e5b0
parent213e4f4959332b49207851a4f8ff762a63891a78 (diff)
parentf5e1c0c4101b76d5967bdc349985df90ac467555 (diff)
downloadtcl-aa1e5ad38c8ed02df39d414770feac068c606178.zip
tcl-aa1e5ad38c8ed02df39d414770feac068c606178.tar.gz
tcl-aa1e5ad38c8ed02df39d414770feac068c606178.tar.bz2
Fix [77059c] TclPushVarName(): pointer overflow
-rw-r--r--changes.md1
-rw-r--r--generic/tclCompCmds.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/changes.md b/changes.md
index b5ee880..f0ea466 100644
--- a/changes.md
+++ b/changes.md
@@ -14,6 +14,7 @@ to the userbase.
- [Tweak install permissions](https://core.tcl-lang.org/tcl/tktview/31d4fa)
- [interp creation resets encoding directory search path](https://core.tcl-lang.org/tcl/tktview/87b697)
- [Pointer arithmetic with NULL in buildInfoObjCmd()](https://core.tcl-lang.org/tcl/tktview/85fc8b)
+ - [TclPushVarName(): pointer overflow](https://core.tcl-lang.org/tcl/tktview/77059c)
# Updated bundled packages, libraries, standards, data
- http 2.10.1
diff --git a/generic/tclCompCmds.c b/generic/tclCompCmds.c
index 6c66278..31ab7d0 100644
--- a/generic/tclCompCmds.c
+++ b/generic/tclCompCmds.c
@@ -3526,7 +3526,7 @@ TclPushVarName(
name = varTokenPtr[1].start;
nameLen = varTokenPtr[1].size;
- if (name[nameLen-1] == ')') {
+ if (nameLen > 0 && name[nameLen-1] == ')') {
/*
* last char is ')' => potential array reference.
*/