summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2012-06-19 14:57:50 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2012-06-19 14:57:50 (GMT)
commit9ff8e40fff5458c0dd6e606d79a127309cd985a9 (patch)
treef45aa27290e2d133a06589a3a6418e5a28d74fd0
parent0776c036bc35c367549578f6293956a80f20ac6e (diff)
parentb4274908c29bc7b8e88b1af0b34ba947453ccdbc (diff)
downloadtcl-9ff8e40fff5458c0dd6e606d79a127309cd985a9.zip
tcl-9ff8e40fff5458c0dd6e606d79a127309cd985a9.tar.gz
tcl-9ff8e40fff5458c0dd6e606d79a127309cd985a9.tar.bz2
Plug memory leak, part of [Bug #3362446]
-rw-r--r--ChangeLog4
-rw-r--r--win/tclWinReg.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 04407b7..1ae8ec4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2012-06-19 Jan Nijtmans <nijtmans@users.sf.net>
+
+ * win/tclWinReg.c: Plug memory leak, part of [Bug #3362446]
+
2012-06-11 Don Porter <dgp@users.sourceforge.net>
* generic/tclBasic.c: [Bug 3532959] Make sure the lifetime management
diff --git a/win/tclWinReg.c b/win/tclWinReg.c
index f2ac367..13216f3 100644
--- a/win/tclWinReg.c
+++ b/win/tclWinReg.c
@@ -671,6 +671,8 @@ GetKeyNames(
}
if (result == TCL_OK) {
Tcl_SetObjResult(interp, resultPtr);
+ } else {
+ Tcl_DecrRefCount(resultPtr); /* BUGFIX: Don't leak on failure. */
}
ckfree(buffer);