summaryrefslogtreecommitdiffstats
path: root/generic/tkImgPhoto.c
diff options
context:
space:
mode:
authorandreas_kupries <akupries@shaw.ca>2001-09-14 20:35:58 (GMT)
committerandreas_kupries <akupries@shaw.ca>2001-09-14 20:35:58 (GMT)
commitd8142ec988da069be185faa5b25c0cf258a7e452 (patch)
treeaf1e2d8738f97514fb3f07466e9b32fdf9fbe051 /generic/tkImgPhoto.c
parentffdcd15f54e2b66fc95e9939934e9141674e3bad (diff)
downloadtk-d8142ec988da069be185faa5b25c0cf258a7e452.zip
tk-d8142ec988da069be185faa5b25c0cf258a7e452.tar.gz
tk-d8142ec988da069be185faa5b25c0cf258a7e452.tar.bz2
* generic/tkImgGIF.c:
* generic/tkImgPPM.c: * generic/tkImgPhoto.c: * generic/tkMenu.c: Applied patch [461578], provided by Vincent Darley. This fixes several memory leaks in the image code. They happen if there are errors during the initialization of the channel the image is supposed to be read from.
Diffstat (limited to 'generic/tkImgPhoto.c')
-rw-r--r--generic/tkImgPhoto.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/generic/tkImgPhoto.c b/generic/tkImgPhoto.c
index 2423ebe..2a9d1df 100644
--- a/generic/tkImgPhoto.c
+++ b/generic/tkImgPhoto.c
@@ -15,7 +15,7 @@
* Department of Computer Science,
* Australian National University.
*
- * RCS: @(#) $Id: tkImgPhoto.c,v 1.23 2001/04/03 04:34:20 hobbs Exp $
+ * RCS: @(#) $Id: tkImgPhoto.c,v 1.24 2001/09/14 20:35:58 andreas_kupries Exp $
*/
#include "tkInt.h"
@@ -1093,10 +1093,12 @@ ImgPhotoCmd(clientData, interp, objc, objv)
}
if (Tcl_SetChannelOption(interp, chan, "-translation", "binary")
!= TCL_OK) {
+ Tcl_Close(NULL, chan);
return TCL_ERROR;
}
if (Tcl_SetChannelOption(interp, chan, "-encoding", "binary")
!= TCL_OK) {
+ Tcl_Close(NULL, chan);
return TCL_ERROR;
}
@@ -1710,10 +1712,12 @@ ImgPhotoConfigureMaster(interp, masterPtr, objc, objv, flags)
}
if (Tcl_SetChannelOption(interp, chan, "-translation", "binary")
!= TCL_OK) {
+ Tcl_Close(NULL, chan);
return TCL_ERROR;
}
if (Tcl_SetChannelOption(interp, chan, "-encoding", "binary")
!= TCL_OK) {
+ Tcl_Close(NULL, chan);
return TCL_ERROR;
}
if (MatchFileFormat(interp, chan, masterPtr->fileString,