summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordgp@users.sourceforge.net <dgp>2011-08-19 20:27:48 (GMT)
committerdgp@users.sourceforge.net <dgp>2011-08-19 20:27:48 (GMT)
commit4103da1420f5dfa153204982e6c4812212f5f7a0 (patch)
tree0162290298d31cb6757eed6bca89246a63e35a79
parent3f77f74d380a1696d1c7cce78a8e16a34b09e824 (diff)
downloadtcl-4103da1420f5dfa153204982e6c4812212f5f7a0.zip
tcl-4103da1420f5dfa153204982e6c4812212f5f7a0.tar.gz
tcl-4103da1420f5dfa153204982e6c4812212f5f7a0.tar.bz2
3393279, 3393280 ReflectClose(.) is missing Tcl_EventuallyFree() calls
at some of its exits.
-rw-r--r--ChangeLog3
-rw-r--r--generic/tclIORTrans.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index db4bf84..5e7821a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2011-08-19 Don Porter <dgp@users.sourceforge.net>
+ * generic/tclIORTrans.c: [Bugs 3393279, 3393280] ReflectClose(.) is
+ missing Tcl_EventuallyFree() calls at some of its exits.
+
* generic/tclIO.c: [Bugs 3394654, 3393276] Revise FlushChannel() to
account for the possibility that the ChanWrite() call might recycle
the buffer out from under us.
diff --git a/generic/tclIORTrans.c b/generic/tclIORTrans.c
index 272306b..4806690 100644
--- a/generic/tclIORTrans.c
+++ b/generic/tclIORTrans.c
@@ -940,6 +940,7 @@ ReflectClose(
int errorCode;
if (!TransformDrain(rtPtr, &errorCode)) {
+ Tcl_EventuallyFree (rtPtr, (Tcl_FreeProc *) FreeReflectedTransform);
return errorCode;
}
}
@@ -948,6 +949,7 @@ ReflectClose(
int errorCode;
if (!TransformFlush(rtPtr, &errorCode, FLUSH_WRITE)) {
+ Tcl_EventuallyFree (rtPtr, (Tcl_FreeProc *) FreeReflectedTransform);
return errorCode;
}
}