
Libpng 1.0.43rc01 - February 12, 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.0.43rc01.tar.gz
   libpng-1.0.43rc01.tar.lzma
     (Get the lzma codec from <http://tukaani.org/lzma>).
   libpng-1.0.43rc01.tar.bz2

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

   libpng-1.0.43rc01-no-config.tar.gz
   libpng-1.0.43rc01-no-config.tar.lzma
   libpng-1.0.43rc01-no-config.tar.bz2

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

   lp1043r01.zip
   lp1043r01.7z
   lp1043r01.tar.bz2

Project files

   libpng-1.0.43rc01-project-netware.zip
   libpng-1.0.43rc01-project-wince.zip

Other information:

   libpng-1.0.43rc01-README.txt
   libpng-1.0.43rc01-KNOWNBUGS.txt
   libpng-1.0.43rc01-LICENSE.txt
   libpng-1.0.43rc01-Y2K-compliance.txt
   libpng-1.0.43rc01-[previous version]-diff.txt

Changes since the last public release (1.0.42):


version 1.2.35beta01 [February 4, 2009]
  Zero out some arrays of pointers after png_malloc(). (Tavis Ormandy)

version 1.2.35beta02 [Feburary 4, 2009]
  Zero out more arrays of pointers after png_malloc().

version 1.2.35beta03 [February 12, 2009]
  Use png_memset() instead of a loop to intialize pointers.  We realize
    this will not work on platforms where the NULL pointer is not all zeroes.

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
