cvs: gd /libgd gd_gd.c gd_gd2.c gd_jpeg.c gd_png.c gd_wbmp.c
[email protected] ("Mattias Bengtsson") Tue, 07 Aug 2007 19:44:41 -0000
| Newsgroups | php.gd.cvs |
|---|---|
| Message-ID | <cvsmattias1186515881@cvsserver> |
mattias Tue Aug 7 19:44:41 2007 UTC
Modified files:
/gd/libgd gd_gd.c gd_gd2.c gd_jpeg.c gd_png.c gd_wbmp.c
Log:
- #105, gdImageCreateFrom*Ptr() can crash if gdNewDynamicCtxEx() fails
http://cvs.php.net/viewvc.cgi/gd/libgd/gd_gd.c?r1=1.12&r2=1.13&diff_format=u
Index: gd/libgd/gd_gd.c
diff -u gd/libgd/gd_gd.c:1.12 gd/libgd/gd_gd.c:1.13
--- gd/libgd/gd_gd.c:1.12 Mon Aug 6 18:32:26 2007
+++ gd/libgd/gd_gd.c Tue Aug 7 19:44:40 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.22&diff_format=u
Index: gd/libgd/gd_gd2.c
diff -u gd/libgd/gd_gd2.c:1.21 gd/libgd/gd_gd2.c:1.22
--- gd/libgd/gd_gd2.c:1.21 Thu Jan 4 12:40:48 2007
+++ gd/libgd/gd_gd2.c Tue Aug 7 19:44:40 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.20&diff_format=u
Index: gd/libgd/gd_jpeg.c
diff -u gd/libgd/gd_jpeg.c:1.19 gd/libgd/gd_jpeg.c:1.20
--- gd/libgd/gd_jpeg.c:1.19 Wed Apr 5 20:46:15 2006
+++ gd/libgd/gd_jpeg.c Tue Aug 7 19:44:40 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.23&r2=1.24&diff_format=u
Index: gd/libgd/gd_png.c
diff -u gd/libgd/gd_png.c:1.23 gd/libgd/gd_png.c:1.24
--- gd/libgd/gd_png.c:1.23 Thu May 17 14:49:45 2007
+++ gd/libgd/gd_png.c Tue Aug 7 19:44:40 2007
@@ -1,4 +1,4 @@
-/* $Id: gd_png.c,v 1.23 2007/05/17 14:49:45 pajoye Exp $ */
+/* $Id: gd_png.c,v 1.24 2007/08/07 19:44:40 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.11&diff_format=u
Index: gd/libgd/gd_wbmp.c
diff -u gd/libgd/gd_wbmp.c:1.10 gd/libgd/gd_wbmp.c:1.11
--- gd/libgd/gd_wbmp.c:1.10 Wed Apr 5 15:54:20 2006
+++ gd/libgd/gd_wbmp.c Tue Aug 7 19:44:40 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;