Libpng 1.6.30beta03 - May 18, 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

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

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

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

Other information:

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

Changes since the last public release (1.6.29):

Version 1.6.30beta01 [April 1, 2017]
  Added missing "$(CPPFLAGS)" to the compile line for c.pic.o in
    makefile.linux and makefile.solaris-x86 (Cosmin).
  Revised documentation of png_get_error_ptr() in the libpng manual.
  Silence clang -Wcomma and const drop warnings (Viktor Szakats).
  Update Sourceforge URLs in documentation (https instead of http).

Version 1.6.30beta02 [April 22, 2017]
  Document need to check for integer overflow when allocating a pixel
    buffer for multiple rows in contrib/gregbook, contrib/pngminus,
    example.c, and in the manual (suggested by Jaeseung Choi).
  Removed reference to the obsolete PNG_SAFE_LIMITS macro in the documentation.

Version 1.6.30beta03 [May 18, 2017]
  Check for integer overflow in contrib/visupng and contrib/tools/genpng.
  Do not double evaluate CMAKE_SYSTEM_PROCESSOR in CMakeLists.txt
  Test CMAKE_HOST_WIN32 instead of WIN32 in CMakeLists.txt

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
