summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2019-04-17 17:45:55 (GMT)
committerdgp <dgp@users.sourceforge.net>2019-04-17 17:45:55 (GMT)
commit80d050ece42aa1defecb23381684d6dc2445fc41 (patch)
tree1afd2c0174427f0adb65852be3bc8254d7279031
parentdadad672afce1ed05c7d18c54545400be87bcefc (diff)
downloadtcl-80d050ece42aa1defecb23381684d6dc2445fc41.zip
tcl-80d050ece42aa1defecb23381684d6dc2445fc41.tar.gz
tcl-80d050ece42aa1defecb23381684d6dc2445fc41.tar.bz2
Do not access allocated memory before initializing it.
-rw-r--r--generic/tclLink.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/generic/tclLink.c b/generic/tclLink.c
index 57735f8..8096c25 100644
--- a/generic/tclLink.c
+++ b/generic/tclLink.c
@@ -345,6 +345,17 @@ Tcl_LinkArray(
}
/*
+ * Initialize allocated space.
+ */
+
+ if (linkPtr->flags & LINK_ALLOC_ADDR) {
+ memset(linkPtr->addr, 0, linkPtr->bytes);
+ }
+ if (linkPtr->flags & LINK_ALLOC_LAST) {
+ memset(linkPtr->lastValue.aryPtr, 0, linkPtr->bytes);
+ }
+
+ /*
* Set common structure values.
*/