
Libpng 1.0.29 - October 4, 2007

This is a public release of libpng, intended for use in production codes.

Files available for download:

Source files with LF line endings (for Unix/Linux) and with a
"configure" script

   libpng-1.0.29.tar.gz
   libpng-1.0.29.tar.bz2

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

   libpng-1.0.29-no-config.tar.gz
   libpng-1.0.29-no-config.tar.bz2

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

   lpng1029.zip
   lpng1029.tar.bz2

Project files

   libpng-1.0.29-project-netware.zip
   libpng-1.0.29-project-wince.zip

Other information:

   libpng-1.0.29-README.txt
   libpng-1.0.29-KNOWNBUGS.txt
   libpng-1.0.29-LICENSE.txt
   libpng-1.0.29-Y2K-compliance.txt

Changes since the last public release (1.0.28):

version 1.0.29 [October 4, 2007]

  Removed "(NO READ SUPPORT)" from png_get_header_version() string.
  Fixed various mistakes reported by George Cook and Jeff Phillips:
  logical vs bitwise NOT in pngrtran.c, bug introduced in 1.2.19
  16-bit cheap transparency expansion, bug introduced in 1.2.19
  errors with sizeof(unknown_chunk.name), bugs introduced in 1.2.19
  <= compare with unsigned var in pngset.c, should be ==.
  Removed some extraneous typecasts.
  Fixed potential out-of-bounds read in png_handle_pCAL(), png_handle_sCAL(),
    png_push_read_tEXt(), png_handle_iTXt(), and png_handle_ztXt() ("flayer"
    results reported by Tavis Ormandy).
  Remove some PNG_CONST declarations from pngwutil.c to avoid compiler warnings
  Revised makefiles to update libpng.pc properly.

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
