[libpng12] Avoid a possible memory leak in contrib/gregbook/readpng.c
diff --git a/ANNOUNCE b/ANNOUNCE
index 7e1b5b2..2db57c7 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,5 +1,5 @@
 
-Libpng 1.2.51beta02 - January 22, 2013
+Libpng 1.2.51beta02 - March 1, 2013
 
 This is not intended to be a public release.  It will be replaced
 within a few weeks by a public version or by another test version.
@@ -48,7 +48,8 @@
     in configure.ac
   Changed default value of PNG_USER_CACHE_MAX from 0 to 32767 in pngconf.h.
 
-version 1.2.51beta02 [January 22, 2013]
+version 1.2.51beta02 [March 1, 2013]
+  Avoid a possible memory leak in contrib/gregbook/readpng.c
 
 (subscription required; visit
 https://lists.sourceforge.net/lists/listinfo/png-mng-implement
diff --git a/CHANGES b/CHANGES
index 5086ebc..f293eea 100644
--- a/CHANGES
+++ b/CHANGES
@@ -2784,7 +2784,8 @@
     in configure.ac
   Changed default value of PNG_USER_CACHE_MAX from 0 to 32767 in pngconf.h.
 
-version 1.2.51beta02 [January 22, 2013]
+version 1.2.51beta02 [March 1, 2013]
+  Avoid a possible memory leak in contrib/gregbook/readpng.c
 
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 (subscription required; visit
diff --git a/contrib/gregbook/readpng.c b/contrib/gregbook/readpng.c
index abfc1fb..a3362ae 100644
--- a/contrib/gregbook/readpng.c
+++ b/contrib/gregbook/readpng.c
@@ -214,6 +214,10 @@
      * libpng function */
 
     if (setjmp(png_jmpbuf(png_ptr))) {
+        free(image_data);
+        image_data = NULL;
+        free(row_pointers);
+        row_pointers = NULL;
         png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
         return NULL;
     }