Libpng 1.2.41beta16 - November 9, 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.2.41beta16.tar.xz (LZMA-compressed, recommended)
   libpng-1.2.41beta16.tar.gz
   libpng-1.2.41beta16.tar.bz2

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

   libpng-1.2.41beta16-no-config.tar.xz (LZMA-compressed, recommended)
   libpng-1.2.41beta16-no-config.tar.gz
   libpng-1.2.41beta16-no-config.tar.bz2

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

   lp1241b16.zip
   lp1241b16.7z
   lp1241b16.tar.bz2

Project files

   libpng-1.2.41beta16-project-netware.zip
   libpng-1.2.41beta16-project-wince.zip

Other information:

   libpng-1.2.41beta16-README.txt
   libpng-1.2.41beta16-KNOWNBUGS.txt
   libpng-1.2.41beta16-LICENSE.txt
   libpng-1.2.41beta16-Y2K-compliance.txt
   libpng-1.2.41beta16-[previous version]-diff.txt

Changes since the last public release (1.2.40):

version 1.2.41beta01 [September 25, 2009]
  Moved redundant IHDR checking into new png_check_IHDR() in png.c
    and report all errors found in the IHDR data.
  Eliminated useless call to png_check_cHRM() from pngset.c
  Expanded TAB characters in pngrtran.c

version 1.2.41beta02 [September 30, 2009]
  Revised png_check_IHDR().

version 1.2.41beta03 [October 1, 2009]
  Revised png_check_IHDR() again, to check info_ptr members instead of
    the contents of the returned parameters.

version 1.2.41beta04 [October 7, 2009]
  Added "xcode" project similar one already in libpng-1.4.0beta (Alam Arias).
  Ported some cosmetic changes from libpng-1.4.0beta86.
  Eliminated a shadowed declaration of "pp" in png_handle_sPLT().

version 1.2.41beta05 [October 17, 2009]
  Revised pngconf.h to make it easier to enable iTXt support.  From libpng
    version 1.2.9 through 1.2.40, defining PNG_iTXt_SUPPORTED did not work
    as expected.
  Ported some cosmetic changes from libpng-1.4.0beta87, changing
    many "#if defined(x)" to "#ifdef x".

version 1.2.41beta06 [October 18, 2009]
  Restored PNG_USE_LOCAL_ARRAYS code in pngread.c that was inadvertently
    deleted in libpng-1.2.41beta05.
  Converted all PNG_NO_* tests to PNG_*_SUPPORTED everywhere except pngconf.h
    as in libpng-1.4.0beta78 and later.

version 1.2.41beta07 [October 21, 2009]
  Ported some cosmetic changes from libpng-1.4.0rc01, changing
    many "#if defined(x)" to "#ifdef x" in png.h and pngconf.h.

version 1.2.41beta08 [October 30, 2009]
  Ported from libpng-1.4.0rc01: png_calloc(), png_get_io_chunk_name(),
    png_get_io_state(), png_set_user_cache_max(), png_get_user_cache_max(),
    png_set_premultiply_alpha, and png_do_read_premultiply_alpha().
  Relocated png_do_chop() ahead of building gamma tables in pngrtran.c
    This avoids building 16-bit gamma tables unnecessarily.

version 1.2.41beta09 [November 1, 2009]
  Removed a harmless extra png_set_invert_alpha() from pngwrite.c
  More bugfixes and improvements to CMakeLists.txt (Philip Lowman)
  Moved CMakeLists.txt from scripts into the main libpng directory.
  Apply png_user_chunk_cache_max within png_decompress_chunk().
  Merged libpng-1.2.41.txt with libpng-1.4.0.txt where appropriate.

version 1.2.41beta10 [November 1, 2009]
  Enabled iTXt support by default. To ensure binary compatibility with
    previous versions, the "lang" and "lang_key" members will be assumed
    to be omitted from previous versions unless the current libpng
    version was built with PNG_iTXt_SUPPORTED (which is otherwise no
    longer necessary to gain iTXt support), as a signal that the user has
    been building previous versions with PNG_iTXt_SUPPORTED as well.

version 1.2.41beta11 [November 2, 2009]
  Store user's user_png_ver in new png_ptr->user_png_ver element.
  Revised iTXt support. To ensure binary compatibility with
    previous versions, the "lang" and "lang_key" members will be assumed
    to be omitted from versions prior to 1.2.41beta11 whenever there is a
    library mismatch.

version 1.2.41beta12 [November 2, 2009]
  Free png_ptr->user_png_ver when destroying png_ptr.

version 1.2.41beta13 [November 3, 2009]
  Updated scripts/pngw32.def and projects/wince/png32ce.def
  Copied projects/wince/png32ce.def to the scripts directory.
  Added scripts/makefile.wce
  Patched ltmain.sh for wince support.
  Added PNG_CONVERT_tIME_SUPPORTED macro.

version 1.2.41beta14 [November 8, 2009]
  versions 1.2.41beta05 through 1.2.41beta13 were abandoned.
  Make inclusion of time.h in pngconf.h depend on PNG_CONVERT_tIME_SUPPORTED
  Make #define PNG_CONVERT_tIME_SUPPORTED depend on PNG_WRITE_tIME_SUPPORTED
  Reverted iTXt compatibility stuff from 1.2.41beta05, 1.2.41beta11, and
    1.2.41beta12.
  Reverted IOSTATE feature, user_cache_max, and premultiply_alpha features
    from 1.2.41beta08.
  Retained png_calloc() from 1.2.41beta08 but as a non-exported function,
    and removed reference to png_calloc from scripts/*.def

version 1.2.41beta15 [November 8, 2009]
  Added PNG_DEPSTRUCT, PNG_DEPRECATED, PNG_USE_RESULT, PNG_NORETURN, and
    PNG_ALLOCATED macros to detect deprecated direct access to the
    png_struct or info_struct members and other deprecated usage in
    applications (John Bowler).
  Updated scripts/makefile* to add "-DPNG_CONFIGURE_LIBPNG" to CFLAGS,
    to prevent warnings about direct access to png structs by libpng
    functions while building libpng.  They need to be tested, especially
    those using compilers other than gcc.
  Updated projects/visualc6 and visualc71 with "/d PNG_CONFIGURE_LIBPNG".

version 1.2.41beta16 [November 9, 2009]
  Removed three direct references to read_info_ptr members in pngtest.c
    that were detected by the new PNG_DEPSTRUCT macro.
  Only #define PNG_DEPSTRUCT, etc. in pngconf.h if not already defined.

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