
Libpng 1.2.59beta02 - September 3, 2017

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.59beta02.tar.xz (LZMA-compressed, recommended)
   libpng-1.2.59beta02.tar.gz

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

   libpng-1.2.59beta02-no-config.tar.xz (LZMA-compressed, recommended)
   libpng-1.2.59beta02-no-config.tar.gz

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

   lp1259b02.zip
   lp1259b02.7z

Project files

   libpng-1.2.59beta02-project-netware.zip
   libpng-1.2.59beta02-project-wince.zip

Other information:

   libpng-1.2.59beta02-README.txt
   libpng-1.2.59beta02-KNOWNBUGS.txt
   libpng-1.2.59beta02-LICENSE.txt
   libpng-1.2.59beta02-Y2K-compliance.txt
   libpng-1.2.59beta02-[previous version]-diff.txt
   libpng-1.2.59beta02-*.asc (armored detached GPG signatures)

Changes since the last public release (1.2.58):

Version 1.2.59beta01 [August 28, 2017]
  Added PNGMINUS_UNUSED macro to contrib/pngminus/p*.c and added missing
    parenthesis in contrib/pngminus/pnm2png.c (bug report by Christian Hesse).

Version 1.2.59beta02 [September 3, 2017]
  Compute a larger limit on IDAT because some applications write a deflate
    buffer for each row (Bug report by Andrew Church).

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
#endif
