
Libpng 1.5.23beta03 - July 9, 2015

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

   1.5.23beta03.tar.xz (LZMA-compressed, recommended)
   1.5.23beta03.tar.gz
   1.5.23beta03.tar.bz2

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

   lp1523b03.7z  (LZMA-compressed, recommended)
   lp1523b03.zip

Other information:

   1.5.23beta03-README.txt
   1.5.23beta03-LICENSE.txt
   libpng-1.5.23beta03-*.asc (armored detached GPG signatures)

Changes since the last public release (1.5.22):

Version 1.5.23beta01 [May 21, 2015]
  Removed unused PNG_SET_CHUNK_[CACHE|MALLOC]_LIMIT_SUPPORTED definitions
    from pnglibconf.h.prebuilt (Andrew Church).
  Replaced "unexpected" with an integer in pngset.c where a long was
    expected, to avoid a compiler warning when PNG_DEBUG > 1.
  Fix typecast in a png_debug2() statement in png_set_text_2() to
    avoid a compiler warning in PNG_DEBUG builds.
  Avoid Coverity issue 80858 (REVERSE NULL) in pngtest.c PNG_DEBUG builds.
  Avoid a harmless potential integer overflow in png_XYZ_from_xy() (Bug
    report from Christopher Ferris).

Version 1.5.23beta02 [June 30, 2015]
  Removed WRITE_WEIGHTED_FILTERED code, to save a few kbytes of the
    compiled library size. It never worked properly and as far as we can
    tell, no one uses it. The png_set_filter_heuristics() and
    png_set_filter_heuristics_fixed() APIs are retained but deprecated
    and do nothing.
  Quieted Coverity issues in pngvalid.c.
  Removed non-working progressive reader 'skip' function.

Version 1.5.23beta03 [July 9, 2015]
  Belatedly added Mans Rullgard to the list of Contributing Authors.

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
