cvs: gd /playground/gdbmp gd_bmp.c

[email protected] ("Pierre-Alain Joye") Fri, 29 Feb 2008 21:45:44 -0000
Newsgroups php.gd.cvs
Message-ID <cvspajoye1204321544@cvsserver>
pajoye		Fri Feb 29 21:45:44 2008 UTC

  Modified files:              
    /gd/playground/gdbmp	gd_bmp.c 
  Log:
  - fix memory leak (skybow on freenode #libgd)
  
http://cvs.php.net/viewvc.cgi/gd/playground/gdbmp/gd_bmp.c?r1=1.5&r2=1.6&diff_format=u
Index: gd/playground/gdbmp/gd_bmp.c
diff -u gd/playground/gdbmp/gd_bmp.c:1.5 gd/playground/gdbmp/gd_bmp.c:1.6
--- gd/playground/gdbmp/gd_bmp.c:1.5	Fri Feb 15 04:08:39 2008
+++ gd/playground/gdbmp/gd_bmp.c	Fri Feb 29 21:45:44 2008
@@ -172,14 +172,17 @@
 	}
 	memset(hdr, 0, sizeof(*hdr));
 	if (bmp_read_header(infile, hdr)) {
+		gdFree(hdr);
 		return NULL;
 	}
 
 	if (hdr->magic != 0x4d42) {
+		gdFree(hdr);
 		return NULL;
 	}
 
 	if (!(info = (bmp_info_t *)gdMalloc(sizeof(bmp_info_t)))) {
+		gdFree(hdr);
 		return NULL;
 	}