cvs: gd(GD_2_0) /libgd NEWS gd_gd.c gd_gd2.c gd_jpeg.c gd_png.c gd_wbmp.c

[email protected] ("Mattias Bengtsson") Tue, 07 Aug 2007 19:50:40 -0000
Newsgroups php.gd.cvs
Message-ID <cvsmattias1186516240@cvsserver>
mattias		Tue Aug  7 19:50:40 2007 UTC

  Modified files:              (Branch: GD_2_0)
    /gd/libgd	NEWS gd_gd.c gd_gd2.c gd_jpeg.c gd_png.c gd_wbmp.c 
  Log:
  -MFH: #105, gdImageCreateFrom*Ptr() can crash if gdNewDynamicCtxEx() fails
  
http://cvs.php.net/viewvc.cgi/gd/libgd/NEWS?r1=1.4.2.27&r2=1.4.2.28&diff_format=u
Index: gd/libgd/NEWS
diff -u gd/libgd/NEWS:1.4.2.27 gd/libgd/NEWS:1.4.2.28
--- gd/libgd/NEWS:1.4.2.27	Mon Aug  6 18:38:58 2007
+++ gd/libgd/NEWS	Tue Aug  7 19:50:39 2007
@@ -4,6 +4,7 @@
  95, Added Netware builds script
  97, ease the creation of regexps to match symbols/functions
 101, _gdCreateFromFile() can crash if gdImageCreate fails (Mattias Bengtsson)
+105, gdImageCreateFrom*Ptr() can crash if gdNewDynamicCtxEx() fails (Mattias)
 
 GD 2.0.35 (2007-06-21)
 41, Fix valgrind error in gdImageFillTiled (Nuno Lopes) 
http://cvs.php.net/viewvc.cgi/gd/libgd/gd_gd.c?r1=1.11.2.1&r2=1.11.2.2&diff_format=u
Index: gd/libgd/gd_gd.c
diff -u gd/libgd/gd_gd.c:1.11.2.1 gd/libgd/gd_gd.c:1.11.2.2
--- gd/libgd/gd_gd.c:1.11.2.1	Mon Aug  6 18:35:02 2007
+++ gd/libgd/gd_gd.c	Tue Aug  7 19:50:39 2007
@@ -182,6 +182,8 @@
 {
   gdImagePtr im;
   gdIOCtx *in = gdNewDynamicCtxEx (size, data, 0);
+  if(!in)
+  	return 0;
   im = gdImageCreateFromGdCtx (in);
   in->gd_free (in);
   return im;
http://cvs.php.net/viewvc.cgi/gd/libgd/gd_gd2.c?r1=1.21&r2=1.21.2.1&diff_format=u
Index: gd/libgd/gd_gd2.c
diff -u gd/libgd/gd_gd2.c:1.21 gd/libgd/gd_gd2.c:1.21.2.1
--- gd/libgd/gd_gd2.c:1.21	Thu Jan  4 12:40:48 2007
+++ gd/libgd/gd_gd2.c	Tue Aug  7 19:50:39 2007
@@ -293,6 +293,8 @@
 {
   gdImagePtr im;
   gdIOCtx *in = gdNewDynamicCtxEx (size, data, 0);
+  if(!in)
+  	return 0;
   im = gdImageCreateFromGd2Ctx (in);
   in->gd_free (in);
   return im;
@@ -503,6 +505,8 @@
 {
   gdImagePtr im;
   gdIOCtx *in = gdNewDynamicCtxEx (size, data, 0);
+  if(!in)
+  	return 0;
   im = gdImageCreateFromGd2PartCtx (in, srcx, srcy, w, h);
   in->gd_free (in);
   return im;
http://cvs.php.net/viewvc.cgi/gd/libgd/gd_jpeg.c?r1=1.19&r2=1.19.2.1&diff_format=u
Index: gd/libgd/gd_jpeg.c
diff -u gd/libgd/gd_jpeg.c:1.19 gd/libgd/gd_jpeg.c:1.19.2.1
--- gd/libgd/gd_jpeg.c:1.19	Wed Apr  5 20:46:15 2006
+++ gd/libgd/gd_jpeg.c	Tue Aug  7 19:50:39 2007
@@ -275,6 +275,8 @@
 {
   gdImagePtr im;
   gdIOCtx *in = gdNewDynamicCtxEx (size, data, 0);
+  if(!in)
+  	return 0;
   im = gdImageCreateFromJpegCtx (in);
   in->gd_free (in);
   return im;
http://cvs.php.net/viewvc.cgi/gd/libgd/gd_png.c?r1=1.21.2.2&r2=1.21.2.3&diff_format=u
Index: gd/libgd/gd_png.c
diff -u gd/libgd/gd_png.c:1.21.2.2 gd/libgd/gd_png.c:1.21.2.3
--- gd/libgd/gd_png.c:1.21.2.2	Thu May 17 14:38:24 2007
+++ gd/libgd/gd_png.c	Tue Aug  7 19:50:39 2007
@@ -1,4 +1,4 @@
-/* $Id: gd_png.c,v 1.21.2.2 2007/05/17 14:38:24 pajoye Exp $ */
+/* $Id: gd_png.c,v 1.21.2.3 2007/08/07 19:50:39 mattias Exp $ */
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
@@ -112,6 +112,8 @@
 {
   gdImagePtr im;
   gdIOCtx *in = gdNewDynamicCtxEx (size, data, 0);
+  if(!in)
+  	return 0;
   im = gdImageCreateFromPngCtx (in);
   in->gd_free (in);
   return im;
http://cvs.php.net/viewvc.cgi/gd/libgd/gd_wbmp.c?r1=1.10&r2=1.10.2.1&diff_format=u
Index: gd/libgd/gd_wbmp.c
diff -u gd/libgd/gd_wbmp.c:1.10 gd/libgd/gd_wbmp.c:1.10.2.1
--- gd/libgd/gd_wbmp.c:1.10	Wed Apr  5 15:54:20 2006
+++ gd/libgd/gd_wbmp.c	Tue Aug  7 19:50:39 2007
@@ -198,6 +198,8 @@
 {
   gdImagePtr im;
   gdIOCtx *in = gdNewDynamicCtxEx (size, data, 0);
+  if(!in)
+  	return 0;
   im = gdImageCreateFromWBMPCtx (in);
   in->gd_free (in);
   return im;