
Libpng 1.2.37beta03 - May 20, 2009

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.

Files available for download:

Source files with LF line endings (for Unix/Linux) and with a
"configure" script

   libpng-1.2.37beta03.tar.gz
   libpng-1.2.37beta03.tar.lzma
     (Get the lzma codec from <http://tukaani.org/lzma>).
   libpng-1.2.37beta03.tar.bz2

Source files with LF line endings (for Unix/Linux) without the
"configure" script

   libpng-1.2.37beta03-no-config.tar.gz
   libpng-1.2.37beta03-no-config.tar.lzma
   libpng-1.2.37beta03-no-config.tar.bz2

Source files with CRLF line endings (for Windows), without the
"configure" script

   lp1237b03.zip
   lp1237b03.7z
   lp1237b03.tar.bz2

Project files

   libpng-1.2.37beta03-project-netware.zip
   libpng-1.2.37beta03-project-wince.zip

Other information:

   libpng-1.2.37beta03-README.txt
   libpng-1.2.37beta03-KNOWNBUGS.txt
   libpng-1.2.37beta03-LICENSE.txt
   libpng-1.2.37beta03-Y2K-compliance.txt
   libpng-1.2.37beta03-[previous version]-diff.txt

Changes since the last public release (1.2.36):

version 1.2.37beta01 [May 14, 2009]
  Fixed inconsistency in pngrutil.c, introduced in libpng-1.2.36.  The
    memset() was using "png_ptr->rowbytes" instead of "row_bytes", which
    the corresponding png_malloc() uses (Joe Drew).
  Clarified usage of sig_bit versus sig_bit_p in example.c (Vincent Torri)
  Updated some of the makefiles in the scripts directory (merged with
    those in libpng-1.4.0beta57).

version 1.2.37beta02 [May 19, 2009]
  Fixed typo in libpng documentation (FILTER_AVE should be FILTER_AVG)
  Relocated misplaced #endif in pngwrite.c, sCAL chunk handler.
  Conditionally compile png_read_finish_row() which is not used by
    progressive readers.
  Added contrib/pngminim/preader to demonstrate building minimal progressive
    decoder, based on contrib/gregbook with embedded libpng and zlib.

version 1.2.37beta03 [May 20, 2009]
  In contrib/pngminim/*, renamed "makefile.std" to "makefile", since there
    is only one makefile in those directories, and revised the README files
    accordingly.
  Reformated sources in libpng style (3-space indentation, comment format)

Send comments/corrections/commendations to png-mng-implement at lists.sf.net

(subscription required; visit 
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
to subscribe) or to glennrp at users.sourceforge.net

Glenn R-P
