
Libpng 1.5.20rc03 - November 17, 2014

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.20rc03.tar.xz (LZMA-compressed, recommended)
   1.5.20rc03.tar.gz
   1.5.20rc03.tar.bz2

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

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

Other information:

   1.5.20rc03-README.txt
   1.5.20rc03-LICENSE.txt
   libpng-1.5.20rc03-*.asc (armored detached GPG signatures)

Changes since the last public release (1.5.19):

Version 1.5.20beta01 [November 6, 2014]
  Removed "option WRITE_COMPRESSED_TEXT enables WRITE_TEXT" from pnglibconf.dfa
  Only mark text chunks as written after successfully writing them.
  Avoid out-of-bounds memory access in png_user_version_check().
  Simplified and future-proofed png_user_version_check().

Version 1.5.20beta02 [November 10, 2014]
  Quieted three "comparison is always false due to limited range" compiler
    warnings in pngset.c

Version 1.5.20rc01 [November 13, 2014]

Version 1.5.20rc02 [November 14, 2014]]
  The macros passed in the command line to Borland make were ignored if
    similarly-named macros were already defined in makefiles. This behavior
    is different from POSIX make and other make programs.  Surround the
    macro definitions with ifndef guards (Cosmin).
  Use memcpy instead of CopyMemory in the definition of png_memcpy.
    The Borland C++ build breaks otherwise (Cosmin).

Version 1.5.20rc03 [November 17, 2014]
  Added "-D_CRT_SECURE_NO_WARNINGS" to CFLAGS in scripts/makefile.vcwin32
  Removed the obsolete $ARCH variable from scripts/makefile.darwin.

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
