diff options
author | dgp <dgp@users.sourceforge.net> | 2011-08-19 20:27:48 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2011-08-19 20:27:48 (GMT) |
commit | 6b86c2f514ad7c263691443055ad1d0a94a9f4f9 (patch) | |
tree | 0162290298d31cb6757eed6bca89246a63e35a79 | |
parent | b4307ec076f504b43a12901bb34c646ea5267391 (diff) | |
download | tcl-6b86c2f514ad7c263691443055ad1d0a94a9f4f9.zip tcl-6b86c2f514ad7c263691443055ad1d0a94a9f4f9.tar.gz tcl-6b86c2f514ad7c263691443055ad1d0a94a9f4f9.tar.bz2 |
3393279, 3393280 ReflectClose(.) is missing Tcl_EventuallyFree() calls
at some of its exits.
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | generic/tclIORTrans.c | 2 |
2 files changed, 5 insertions, 0 deletions
@@ -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; } } |