Imported from libpng-1.2.2beta6.tar
diff --git a/pngread.c b/pngread.c
index 2800847..e5fc3f1 100644
--- a/pngread.c
+++ b/pngread.c
@@ -1,7 +1,7 @@
 
 /* pngread.c - read a PNG file
  *
- * libpng 1.2.2beta5 - March 26, 2002
+ * libpng 1.2.2beta6 - March 31, 2002
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2002 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -68,7 +68,13 @@
    {
       png_free(png_ptr, png_ptr->zbuf);
       png_ptr->zbuf=NULL;
-      png_destroy_struct(png_ptr);
+#ifdef PNG_USER_MEM_SUPPORTED
+      png_destroy_struct_2((png_voidp)png_ptr, 
+			   (png_free_ptr)free_fn,
+			   (png_voidp)mem_ptr);
+#else
+      png_destroy_struct((png_voidp)png_ptr);
+#endif
       return (NULL);
    }
 #ifdef USE_FAR_KEYWORD
@@ -776,7 +782,7 @@
  * not called png_set_interlace_handling(), the display_row buffer will
  * be ignored, so pass NULL to it.
  *
- * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2beta5
+ * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2beta6
  */
 
 void PNGAPI
@@ -825,7 +831,7 @@
  * only call this function once.  If you desire to have an image for
  * each pass of a interlaced image, use png_read_rows() instead.
  *
- * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2beta5
+ * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2beta6
  */
 void PNGAPI
 png_read_image(png_structp png_ptr, png_bytepp image)