cvs: gd(GD_2_0) /libgd/src gd_png.c

From: Date: Sat, 14 Mar 2009 04:17:14 +0000
Subject: cvs: gd(GD_2_0) /libgd/src gd_png.c
Groups: php.gd.cvs 
Request: Send a blank email to php-gd-cvs+get-581@lists.php.net to get a copy of this message
tabe Sat Mar 14 04:17:14 2009 UTC Modified files: (Branch: GD_2_0) /gd/libgd/src gd_png.c Log: MFH: fixed a slim chance of memory leaks. http://cvs.php.net/viewvc.cgi/gd/libgd/src/gd_png.c?r1=1.21.2.5&r2=1.21.2.6&diff_format=u Index: gd/libgd/src/gd_png.c diff -u gd/libgd/src/gd_png.c:1.21.2.5 gd/libgd/src/gd_png.c:1.21.2.6 --- gd/libgd/src/gd_png.c:1.21.2.5 Fri Mar 13 20:26:55 2009 +++ gd/libgd/src/gd_png.c Sat Mar 14 04:17:14 2009 @@ -1,4 +1,4 @@ -/* $Id: gd_png.c,v 1.21.2.5 2009/03/13 20:26:55 tabe Exp $ */ +/* $Id: gd_png.c,v 1.21.2.6 2009/03/14 04:17:14 tabe Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" #endif @@ -743,14 +743,13 @@ png_bytep *prow_pointers; int saveAlphaFlag = im->saveAlphaFlag; if (overflow2(sizeof (png_bytep), height)) { - return; + goto bail; } row_pointers = gdMalloc (sizeof (png_bytep) * height); if (row_pointers == NULL) { fprintf (stderr, "gd-png error: unable to allocate row_pointers\n"); - /* 2.0.29: return was missing */ - return; + goto bail; } prow_pointers = row_pointers; for (j = 0; j < height; ++j) @@ -763,7 +762,7 @@ gdFree (row_pointers[i]); /* 2.0.29: memory leak TBB */ gdFree(row_pointers); - return; + goto bail; } pOutputRow = *prow_pointers++; pThisRow = *ptpixels++; @@ -801,15 +800,13 @@ { png_bytep *row_pointers; if (overflow2(sizeof (png_bytep), height)) { - return; + goto bail; } row_pointers = gdMalloc (sizeof (png_bytep) * height); if (row_pointers == NULL) { - fprintf (stderr, - "gd-png error: unable to allocate row_pointers\n"); - /* TBB: return missing */ - return; + fprintf (stderr, "gd-png error: unable to allocate row_pointers\n"); + goto bail; } for (j = 0; j < height; ++j) { @@ -820,7 +817,7 @@ gdFree (row_pointers[i]); /* TBB: memory leak */ gdFree (row_pointers); - return; + goto bail; } for (i = 0; i < width; ++i) row_pointers[j][i] = mapping[im->pixels[j][i]];

« previous php.gd.cvs (#581) next »