Alien-FreeImage

 view release on metacpan or  search on metacpan

src/Source/LibPNG/CHANGES  view on Meta::CPAN

  Define PNG_ALWAYS_EXTERN when __MWERKS__ && WIN32 are defined
  Added type casting to all png_malloc() function calls

Version 0.99a [January 31, 1998]
  Added type casts and parentheses to all returns that return a value.(Tim W.)

Version 0.99b [February 4, 1998]
  Added type cast png_uint_32 on malloc function calls where needed.
  Changed type of num_hist from png_uint_32 to int (same as num_palette).
  Added checks for rowbytes overflow, in case png_size_t is less than 32 bits.
  Renamed makefile.elf to makefile.lnx.

Version 0.99c [February 7, 1998]
  More type casting.  Removed erroneous overflow test in pngmem.c.
  Added png_buffered_memcpy() and png_buffered_memset(), apply them to rowbytes.
  Added UNIX manual pages libpng.3 (incorporating libpng.txt) and  png.5.

Version 0.99d [February 11, 1998]
  Renamed "far_to_near()" "png_far_to_near()"
  Revised libpng.3
  Version 99c "buffered" operations didn't work as intended.  Replaced them
    with png_memcpy_check() and png_memset_check().
  Added many "if (png_ptr == NULL) return" to quell compiler warnings about
    unused png_ptr, mostly in pngget.c and pngset.c.
  Check for overlength tRNS chunk present when indexed-color PLTE is read.
  Cleaned up spelling errors in libpng.3/libpng.txt
  Corrected a problem with png_get_tRNS() which returned undefined trans array

Version 0.99e [February 28, 1998]
  Corrected png_get_tRNS() again.
  Add parentheses for easier reading of pngget.c, fixed "||" should be "&&".
  Touched up example.c to make more of it compileable, although the entire
    file still can't be compiled (Willem van Schaik)
  Fixed a bug in png_do_shift() (Bryan Tsai)
  Added a space in png.h prototype for png_write_chunk_start()
  Replaced pngtest.png with one created with zlib 1.1.1
  Changed pngtest to report PASS even when file size is different (Jean-loup G.)
  Corrected some logic errors in png_do_invert_alpha() (Chris Patterson)

Version 0.99f [March 5, 1998]
  Corrected a bug in pngpread() introduced in version 99c (Kevin Bracey)
  Moved makefiles into a "scripts" directory, and added INSTALL instruction file
  Added makefile.os2 and pngos2.def (A. Zabolotny) and makefile.s2x (W. Sebok)
  Added pointers to "note on libpng versions" in makefile.lnx and README
  Added row callback feature when reading and writing nonprogressive rows
    and added a test of this feature in pngtest.c
  Added user transform callbacks, with test of the feature in pngtest.c

Version 0.99g [March 6, 1998, morning]
  Minor changes to pngtest.c to suppress compiler warnings.
  Removed "beta" language from documentation.

Version 0.99h [March 6, 1998, evening]
  Minor changes to previous minor changes to pngtest.c
  Changed PNG_READ_NOT_FULLY_SUPPORTED to PNG_READ_TRANSFORMS_NOT_SUPPORTED
    and added PNG_PROGRESSIVE_READ_NOT_SUPPORTED macro
  Added user transform capability

Version 1.00 [March 7, 1998]
  Changed several typedefs in pngrutil.c
  Added makefile.wat (Pawel Mrochen), updated makefile.tc3 (Willem van Schaik)
  Replaced "while(1)" with "for(;;)"
  Added PNGARG() to prototypes in pngtest.c and removed some prototypes
  Updated some of the makefiles (Tom Lane)
  Changed some typedefs (s_start, etc.) in pngrutil.c
  Fixed dimensions of "short_months" array in pngwrite.c
  Replaced ansi2knr.c with the one from jpeg-v6

Version 1.0.0 [March 8, 1998]
  Changed name from 1.00 to 1.0.0 (Adam Costello)
  Added smakefile.ppc (with SCOPTIONS.ppc) for Amiga PPC (Andreas Kleinert)

Version 1.0.0a [March 9, 1998]
  Fixed three bugs in pngrtran.c to make gamma+background handling consistent
    (Greg Roelofs)
  Changed format of the PNG_LIBPNG_VER integer to xyyzz instead of xyz
    for major, minor, and bugfix releases.  This is 10001. (Adam Costello,
    Tom Lane)
  Make months range from 1-12 in png_convert_to_rfc1123

Version 1.0.0b [March 13, 1998]
  Quieted compiler complaints about two empty "for" loops in pngrutil.c
  Minor changes to makefile.s2x
  Removed #ifdef/#endif around a png_free() in pngread.c

Version 1.0.1 [March 14, 1998]
  Changed makefile.s2x to reduce security risk of using a relative pathname
  Fixed some typos in the documentation (Greg).
  Fixed a problem with value of "channels" returned by png_read_update_info()

Version 1.0.1a [April 21, 1998]
  Optimized Paeth calculations by replacing abs() function calls with intrinsics
  plus other loop optimizations. Improves avg decoding speed by about 20%.
  Commented out i386istic "align" compiler flags in makefile.lnx.
  Reduced the default warning level in some makefiles, to make them consistent.
  Removed references to IJG and JPEG in the ansi2knr.c copyright statement.
  Fixed a bug in png_do_strip_filler with XXRRGGBB => RRGGBB transformation.
  Added grayscale and 16-bit capability to png_do_read_filler().
  Fixed a bug in pngset.c, introduced in version 0.99c, that sets rowbytes
    too large when writing an image with bit_depth < 8 (Bob Dellaca).
  Corrected some bugs in the experimental weighted filtering heuristics.
  Moved a misplaced pngrutil code block that truncates tRNS if it has more
    than num_palette entries -- test was done before num_palette was defined.
  Fixed a png_convert_to_rfc1123() bug that converts day 31 to 0 (Steve Eddins).
  Changed compiler flags in makefile.wat for better optimization
    (Pawel Mrochen).

Version 1.0.1b [May 2, 1998]
  Relocated png_do_gray_to_rgb() within png_do_read_transformations() (Greg).
  Relocated the png_composite macros from pngrtran.c to png.h (Greg).
  Added makefile.sco (contributed by Mike Hopkirk).
  Fixed two bugs (missing definitions of "istop") introduced in libpng-1.0.1a.
  Fixed a bug in pngrtran.c that would set channels=5 under some circumstances.
  More work on the Paeth-filtering, achieving imperceptible speedup
    (A Kleinert).
  More work on loop optimization which may help when compiled with C++
    compilers.
  Added warnings when people try to use transforms they've defined out.
  Collapsed 4 "i" and "c" loops into single "i" loops in pngrtran and pngwtran.
  Revised paragraph about png_set_expand() in libpng.txt and libpng.3 (Greg)

src/Source/LibPNG/CHANGES  view on Meta::CPAN

  Added a check for info_ptr->free_me&PNG_FREE_TEXT when freeing text in png.c
  Simplify png_sig_bytes() function to remove use of non-ISO-C strdup().

Version 1.0.6e [April 9, 2000]
  Added png_data_freer() function.
  In the code that checks for over-length tRNS chunks, added check of
    info_ptr->num_trans as well as png_ptr->num_trans (Matthias Benckmann)
  Minor revisions of libpng.txt/libpng.3.
  Check for existing data and free it if the free_me flag is set, in png_set_*()
    and png_handle_*().
  Only define PNG_WEIGHTED_FILTERS_SUPPORTED when PNG_FLOATING_POINT_SUPPORTED
    is defined.
  Changed several instances of PNG_NO_CONSOLE_ID to PNG_NO_STDIO in pngrutil.c
    and mentioned the purposes of the two macros in libpng.txt/libpng.3.

Version 1.0.6f [April 14, 2000]
  Revised png_set_iCCP() and png_set_rows() to avoid prematurely freeing data.
  Add checks in png_set_text() for NULL members of the input text structure.
  Revised libpng.txt/libpng.3.
  Removed superfluous prototype for png_set_iTXt from png.h
  Removed "else" from pngread.c, after png_error(), and changed "0" to "length".
  Changed several png_errors about malformed ancillary chunks to png_warnings.

Version 1.0.6g [April 24, 2000]
  Added png_pass-* arrays to pnggccrd.c when PNG_USE_LOCAL_ARRAYS is defined.
  Relocated paragraph about png_set_background() in libpng.3/libpng.txt
    and other revisions (Matthias Benckmann)
  Relocated info_ptr->free_me, png_ptr->free_me, and other info_ptr and
    png_ptr members to restore binary compatibility with libpng-1.0.5
    (breaks compatibility with libpng-1.0.6).

Version 1.0.6h [April 24, 2000]
  Changed shared library so-number pattern from 2.x.y.z to xy.z (this builds
    libpng.so.10 & libpng.so.10.6h instead of libpng.so.2 & libpng.so.2.1.0.6h)
    This is a temporary change for test purposes.

Version 1.0.6i [May 2, 2000]
  Rearranged some members at the end of png_info and png_struct, to put
    unknown_chunks_num and free_me within the original size of the png_structs
    and free_me, png_read_user_fn, and png_free_fn within the original png_info,
    because some old applications allocate the structs directly instead of
    using png_create_*().
  Added documentation of user memory functions in libpng.txt/libpng.3
  Modified png_read_png so that it will use user_allocated row_pointers
    if present, unless free_me directs that it be freed, and added description
    of the use of png_set_rows() and png_get_rows() in libpng.txt/libpng.3.
  Added PNG_LEGACY_SUPPORTED macro, and #ifdef out all new (since version
    1.00) members of png_struct and png_info, to regain binary compatibility
    when you define this macro.  Capabilities lost in this event
    are user transforms (new in version 1.0.0),the user transform pointer
    (new in version 1.0.2), rgb_to_gray (new in 1.0.5), iCCP, sCAL, sPLT,
    the high-level interface, and unknown chunks support (all new in 1.0.6).
    This was necessary because of old applications that allocate the structs
    directly as authors were instructed to do in libpng-0.88 and earlier,
    instead of using png_create_*().
  Added modes PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT which
    can be used to detect codes that directly allocate the structs, and
    code to check these modes in png_read_init() and png_write_init() and
    generate a libpng error if the modes aren't set and PNG_LEGACY_SUPPORTED
    was not defined.
  Added makefile.intel and updated makefile.watcom (Pawel Mrochen)

Version 1.0.6j [May 3, 2000]
  Overloaded png_read_init() and png_write_init() with macros that convert
    calls to png_read_init_2() or png_write_init_2() that check the version
    and structure sizes.

Version 1.0.7beta11 [May 7, 2000]
  Removed the new PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT modes
    which are no longer used.
  Eliminated the three new members of png_text when PNG_LEGACY_SUPPORTED is
    defined or when neither PNG_READ_iTXt_SUPPORTED nor PNG_WRITE_iTXT_SUPPORTED
    is defined.
  Made PNG_NO_READ|WRITE_iTXt the default setting, to avoid memory
    overrun when old applications fill the info_ptr->text structure directly.
  Added PNGAPI macro, and added it to the definitions of all exported functions.
  Relocated version macro definitions ahead of the includes of zlib.h and
    pngconf.h in png.h.

Version 1.0.7beta12 [May 12, 2000]
  Revised pngset.c to avoid a problem with expanding the png_debug macro.
  Deleted some extraneous defines from pngconf.h
  Made PNG_NO_CONSOLE_IO the default condition when PNG_BUILD_DLL is defined.
  Use MSC _RPTn debugging instead of fprintf if _MSC_VER is defined.
  Added png_access_version_number() function.
  Check for mask&PNG_FREE_CHNK (for TEXT, SCAL, PCAL) in png_free_data().
  Expanded libpng.3/libpng.txt information about png_data_freer().

Version 1.0.7beta14 [May 17, 2000] (beta13 was not published)
  Changed pnggccrd.c and pngvcrd.c to handle bad adaptive filter types as
    warnings instead of errors, as pngrutil.c does.
  Set the PNG_INFO_IDAT valid flag in png_set_rows() so png_write_png()
    will actually write IDATs.
  Made the default PNG_USE_LOCAL_ARRAYS depend on PNG_DLL instead of WIN32.
  Make png_free_data() ignore its final parameter except when freeing data
    that can have multiple instances (text, sPLT, unknowns).
  Fixed a new bug in png_set_rows().
  Removed info_ptr->valid tests from png_free_data(), as in version 1.0.5.
  Added png_set_invalid() function.
  Fixed incorrect illustrations of png_destroy_write_struct() in example.c.

Version 1.0.7beta15 [May 30, 2000]
  Revised the deliberately erroneous Linux setjmp code in pngconf.h to produce
    fewer error messages.
  Rearranged checks for Z_OK to check the most likely path first in pngpread.c
    and pngwutil.c.
  Added checks in pngtest.c for png_create_*() returning NULL, and mentioned
    in libpng.txt/libpng.3 the need for applications to check this.
  Changed names of png_default_*() functions in pngtest to pngtest_*().
  Changed return type of png_get_x|y_offset_*() from png_uint_32 to png_int_32.
  Fixed some bugs in the unused PNG_INCH_CONVERSIONS functions in pngget.c
  Set each pointer to NULL after freeing it in png_free_data().
  Worked around a problem in pngconf.h; AIX's strings.h defines an "index"
    macro that conflicts with libpng's png_color_16.index. (Dimitri
    Papadapoulos)
  Added "msvc" directory with MSVC++ project files (Simon-Pierre Cadieux).

Version 1.0.7beta16 [June 4, 2000]
  Revised the workaround of AIX string.h "index" bug.
  Added a check for overlength PLTE chunk in pngrutil.c.
  Added PNG_NO_POINTER_INDEXING macro to use array-indexing instead of pointer

src/Source/LibPNG/CHANGES  view on Meta::CPAN

    when it tries to read an erroneous PhotoShop iCCP chunk.
  Added PNG_USE_DLL macro.
  Revised the copyright/disclaimer/license notice.
  Added contrib/msvctest directory

Version 1.0.7rc1 [June 9, 2000]
  Corrected the definition of PNG_TRANSFORM_INVERT_ALPHA  (0x0400 not 0x0200)
  Added contrib/visupng directory (Willem van Schaik)

Version 1.0.7beta18 [June 23, 2000]
  Revised PNGAPI definition, and pngvcrd.c to work with __GCC__
    and do not redefine PNGAPI if it is passed in via a compiler directive.
  Revised visupng/PngFile.c to remove returns from within the Try block.
  Removed leading underscores from "_PNG_H" and "_PNG_SAVE_BSD_SOURCE" macros.
  Updated contrib/visupng/cexcept.h to version 1.0.0.
  Fixed bugs in pngwrite.c and pngwutil.c that prevented writing iCCP chunks.

Version 1.0.7rc2 [June 28, 2000]
  Updated license to include disclaimers required by UCITA.
  Fixed "DJBPP" typo in pnggccrd.c introduced in beta18.

Version 1.0.7 [July 1, 2000]
  Revised the definition of "trans_values" in libpng.3/libpng.txt

Version 1.0.8beta1 [July 8, 2000]
  Added png_free(png_ptr, key) two places in pngpread.c to stop memory leaks.
  Changed PNG_NO_STDIO to PNG_NO_CONSOLE_IO, several places in pngrutil.c and
     pngwutil.c.
  Changed PNG_EXPORT_VAR to use PNG_IMPEXP, in pngconf.h.
  Removed unused "#include <assert.h>" from png.c
  Added WindowsCE support.
  Revised pnggccrd.c to work with gcc-2.95.2 and in the Cygwin environment.

Version 1.0.8beta2 [July 10, 2000]
  Added project files to the wince directory and made further revisions
     of pngtest.c, pngrio.c, and pngwio.c in support of WindowsCE.

Version 1.0.8beta3 [July 11, 2000]
  Only set the PNG_FLAG_FREE_TRNS or PNG_FREE_TRNS flag in png_handle_tRNS()
     for indexed-color input files to avoid potential double-freeing trans array
     under some unusual conditions; problem was introduced in version 1.0.6f.
  Further revisions to pngtest.c and files in the wince subdirectory.

Version 1.0.8beta4 [July 14, 2000]
  Added the files pngbar.png and pngbar.jpg to the distribution.
  Added makefile.cygwin, and cygwin support in pngconf.h
  Added PNG_NO_ZALLOC_ZERO macro (makes png_zalloc skip zeroing memory)

Version 1.0.8rc1 [July 16, 2000]
  Revised png_debug() macros and statements to eliminate compiler warnings.

Version 1.0.8 [July 24, 2000]
  Added png_flush() in pngwrite.c, after png_write_IEND().
  Updated makefile.hpux to build a shared library.

Version 1.0.9beta1 [November 10, 2000]
  Fixed typo in scripts/makefile.hpux
  Updated makevms.com in scripts and contrib/* and contrib/* (Martin Zinser)
  Fixed seqence-point bug in contrib/pngminus/png2pnm (Martin Zinser)
  Changed "cdrom.com" in documentation to "libpng.org"
  Revised pnggccrd.c to get it all working, and updated makefile.gcmmx (Greg).
  Changed type of "params" from voidp to png_voidp in png_read|write_png().
  Make sure PNGAPI and PNG_IMPEXP are defined in pngconf.h.
  Revised the 3 instances of WRITEFILE in pngtest.c.
  Relocated "msvc" and "wince" project subdirectories into "dll" subdirectory.
  Updated png.rc in dll/msvc project
  Revised makefile.dec to define and use LIBPATH and INCPATH
  Increased size of global png_libpng_ver[] array from 12 to 18 chars.
  Made global png_libpng_ver[], png_sig[] and png_pass_*[] arrays const.
  Removed duplicate png_crc_finish() from png_handle_bKGD() function.
  Added a warning when application calls png_read_update_info() multiple times.
  Revised makefile.cygwin
  Fixed bugs in iCCP support in pngrutil.c and pngwutil.c.
  Replaced png_set_empty_plte_permitted() with png_permit_mng_features().

Version 1.0.9beta2 [November 19, 2000]
  Renamed the "dll" subdirectory "projects".
  Added borland project files to "projects" subdirectory.
  Set VS_FF_PRERELEASE and VS_FF_PATCHED flags in msvc/png.rc when appropriate.
  Add error message in png_set_compression_buffer_size() when malloc fails.

Version 1.0.9beta3 [November 23, 2000]
  Revised PNG_LIBPNG_BUILD_TYPE macro in png.h, used in the msvc project.
  Removed the png_flush() in pngwrite.c that crashes some applications
    that don't set png_output_flush_fn.
  Added makefile.macosx and makefile.aix to scripts directory.

Version 1.0.9beta4 [December 1, 2000]
  Change png_chunk_warning to png_warning in png_check_keyword().
  Increased the first part of msg buffer from 16 to 18 in png_chunk_error().

Version 1.0.9beta5 [December 15, 2000]
  Added support for filter method 64 (for PNG datastreams embedded in MNG).

Version 1.0.9beta6 [December 18, 2000]
  Revised png_set_filter() to accept filter method 64 when appropriate.
  Added new PNG_HAVE_PNG_SIGNATURE bit to png_ptr->mode and use it to
    help prevent applications from using MNG features in PNG datastreams.
  Added png_permit_mng_features() function.
  Revised libpng.3/libpng.txt.  Changed "filter type" to "filter method".

Version 1.0.9rc1 [December 23, 2000]
  Revised test for PNG_HAVE_PNG_SIGNATURE in pngrutil.c
  Fixed error handling of unknown compression type in png_decompress_chunk().
  In pngconf.h, define __cdecl when _MSC_VER is defined.

Version 1.0.9beta7 [December 28, 2000]
  Changed PNG_TEXT_COMPRESSION_zTXt to PNG_COMPRESSION_TYPE_BASE several places.
  Revised memory management in png_set_hIST and png_handle_hIST in a backward
    compatible manner.  PLTE and tRNS were revised similarly.
  Revised the iCCP chunk reader to ignore trailing garbage.

Version 1.0.9beta8 [January 12, 2001]
  Moved pngasmrd.h into pngconf.h.
  Improved handling of out-of-spec garbage iCCP chunks generated by PhotoShop.

Version 1.0.9beta9 [January 15, 2001]
  Added png_set_invalid, png_permit_mng_features, and png_mmx_supported to
    wince and msvc project module definition files.
  Minor revision of makefile.cygwin.
  Fixed bug with progressive reading of narrow interlaced images in pngpread.c

src/Source/LibPNG/CHANGES  view on Meta::CPAN

    libpng-1.2.9beta1.
  Added "OS2" to list of systems that don't need underscores, in pnggccrd.c
  Removed libpng version and date from *.c files.

Version 1.2.9beta5 [March 4, 2006]
  Removed trailing blanks from source files.
  Put version and date of latest change in each source file, and changed
    copyright year accordingly.
  More cleanup of configure.ac, Makefile.am, and associated scripts.
  Restored scripts/makefile.elf which was inadvertently deleted.

Version 1.2.9beta6 [March 6, 2006]
  Fixed typo (RELEASE) in configuration files.

Version 1.2.9beta7 [March 7, 2006]
  Removed libpng.vers and libpng.sym from libpng12_la_SOURCES in Makefile.am
  Fixed inconsistent #ifdef's around png_sig_bytes() and png_set_sCAL_s()
    in png.h.
  Updated makefile.elf as suggested by debian.
  Made cosmetic changes to some makefiles, adding LN_SF and other macros.
  Made some makefiles accept "exec_prefix".

Version 1.2.9beta8 [March 9, 2006]
  Fixed some "#if defined (..." which should be "#if defined(..."
    Bug introduced in libpng-1.2.8.
  Fixed inconsistency in definition of png_default_read_data()
  Restored blank that was lost from makefile.sggcc "clean" target in beta7.
  Revised calculation of "current" and "major" for irix in ltmain.sh
  Changed "mkdir" to "MKDIR_P" in some makefiles.
  Separated PNG_EXPAND and PNG_EXPAND_tRNS.
  Added png_set_expand_gray_1_2_4_to_8() and deprecated
    png_set_gray_1_2_4_to_8() which also expands tRNS to alpha.

Version 1.2.9beta9 [March 10, 2006]
  Include "config.h" in pngconf.h when available.
  Added some checks for NULL png_ptr or NULL info_ptr (timeless)

Version 1.2.9beta10 [March 20, 2006]
  Removed extra CR from contrib/visualpng/VisualPng.dsw (Cosmin)
  Made pnggccrd.c PIC-compliant (Christian Aichinger).
  Added makefile.mingw (Wolfgang Glas).
  Revised pngconf.h MMX checking.

Version 1.2.9beta11 [March 22, 2006]
  Fixed out-of-order declaration in pngwrite.c that was introduced in beta9
  Simplified some makefiles by using LIBSO, LIBSOMAJ, and LIBSOVER macros.

Version 1.2.9rc1 [March 31, 2006]
  Defined PNG_USER_PRIVATEBUILD when including "pngusr.h" (Cosmin).
  Removed nonsensical assertion check from pngtest.c (Cosmin).

Version 1.2.9 [April 14, 2006]
  Revised makefile.beos and added "none" selector in ltmain.sh

Version 1.2.10beta1 [April 15, 2006]
  Renamed "config.h" to "png_conf.h" and revised Makefile.am to add
    -DPNG_BUILDING_LIBPNG to compile directive, and modified pngconf.h
    to include png_conf.h only when PNG_BUILDING_LIBPNG is defined.

Version 1.2.10beta2 [April 15, 2006]
  Manually updated Makefile.in and configure.  Changed png_conf.h.in
    back to config.h.

Version 1.2.10beta3 [April 15, 2006]
  Change png_conf.h back to config.h in pngconf.h.

Version 1.2.10beta4 [April 16, 2006]
  Change PNG_BUILDING_LIBPNG to PNG_CONFIGURE_LIBPNG in config/Makefile*.

Version 1.2.10beta5 [April 16, 2006]
  Added a configure check for compiling assembler code in pnggccrd.c

Version 1.2.10beta6 [April 17, 2006]
  Revised the configure check for pnggccrd.c
  Moved -DPNG_CONFIGURE_LIBPNG into @LIBPNG_DEFINES@
  Added @LIBPNG_DEFINES@ to arguments when building libpng.sym

Version 1.2.10beta7 [April 18, 2006]
  Change "exec_prefix=$prefix" to "exec_prefix=$(prefix)" in makefiles.

Version 1.2.10rc1 [April 19, 2006]
  Ensure pngconf.h doesn't define both PNG_USE_PNGGCCRD and PNG_USE_PNGVCRD
  Fixed "LN_FS" typo in makefile.sco and makefile.solaris.

Version 1.2.10rc2 [April 20, 2006]
  Added a backslash between -DPNG_CONFIGURE_LIBPNG and -DPNG_NO_ASSEMBLER_CODE
   in configure.ac and configure
  Made the configure warning about versioned symbols less arrogant.

Version 1.2.10rc3 [April 21, 2006]
  Added a note in libpng.txt that png_set_sig_bytes(8) can be used when
    writing an embedded PNG without the 8-byte signature.
  Revised makefiles and configure to avoid making links to libpng.so.*

Version 1.2.10 [April 23, 2006]
  Reverted configure to "rc2" state.

Version 1.2.11beta1 [May 31, 2006]
  scripts/libpng.pc.in contained "configure" style version info and would
    not work with makefiles.
  The shared-library makefiles were linking to libpng.so.0 instead of
    libpng.so.3 compatibility as the library.

Version 1.2.11beta2 [June 2, 2006]
  Increased sprintf buffer from 50 to 52 chars in pngrutil.c to avoid
    buffer overflow.
  Fixed bug in example.c (png_set_palette_rgb -> png_set_palette_to_rgb)

Version 1.2.11beta3 [June 5, 2006]
  Prepended "#! /bin/sh" to ltmail.sh and contrib/pngminus/*.sh (Cosmin).
  Removed the accidental leftover Makefile.in~ (Cosmin).
  Avoided potential buffer overflow and optimized buffer in
    png_write_sCAL(), png_write_sCAL_s() (Cosmin).
  Removed the include directories and libraries from CFLAGS and LDFLAGS
    in scripts/makefile.gcc (Nelson A. de Oliveira, Cosmin).

Version 1.2.11beta4 [June 6, 2006]
  Allow zero-length IDAT chunks after the entire zlib datastream, but not
    after another intervening chunk type.

Version 1.0.19rc1, 1.2.11rc1 [June 13, 2006]

src/Source/LibPNG/CHANGES  view on Meta::CPAN

  Added png_set_benign_errors(), png_benign_error(), png_chunk_benign_error().
  Added typedef for png_int_32 and png_uint_32 on 64-bit systems.
  Added "(unsigned long)" typecast on png_uint_32 variables in printf lists.

Version 1.4.0beta8 [June 22, 2006]
  Added demonstration of user chunk support in pngtest.c, to support the
    public sTER chunk and a private vpAg chunk.

Version 1.4.0beta9 [July 3, 2006]
  Removed ordinals from scripts/pngw32.def and removed png_info_int and
    png_set_gray_1_2_4_to_8 entries.
  Inline call of png_get_uint_32() in png_get_uint_31().
  Use png_get_uint_31() to get vpAg width and height in pngtest.c
  Removed WINCE and Netware projects.
  Removed standalone Y2KINFO file.

Version 1.4.0beta10 [July 12, 2006]
  Eliminated automatic copy of pngconf.h to pngconf.h.in from configure and
    some makefiles, because it was not working reliably.  Instead, distribute
    pngconf.h.in along with pngconf.h and cause configure and some of the
    makefiles to update pngconf.h from pngconf.h.in.
  Added pngconf.h to DEPENDENCIES in Makefile.am

Version 1.4.0beta11 [August 19, 2006]
  Removed AC_FUNC_MALLOC from configure.ac.
  Added a warning when writing iCCP profile with mismatched profile length.
  Patched pnggccrd.c to assemble on x86_64 platforms.
  Moved chunk header reading into a separate function png_read_chunk_header()
    in pngrutil.c.  The chunk header (len+sig) is now serialized in a single
    operation (Cosmin).
  Implemented support for I/O states. Added png_ptr member io_state, and
    functions png_get_io_chunk_name() and png_get_io_state() in pngget.c
    (Cosmin).
  Added png_get_io_chunk_name and png_get_io_state to scripts/*.def (Cosmin).
  Renamed scripts/pngw32.* to scripts/pngwin.* (Cosmin).
  Removed the include directories and libraries from CFLAGS and LDFLAGS
    in scripts/makefile.gcc (Cosmin).
  Used png_save_uint_32() to set vpAg width and height in pngtest.c (Cosmin).
  Cast to proper type when getting/setting vpAg units in pngtest.c (Cosmin).
  Added pngintrn.h to the Visual C++ projects (Cosmin).
  Removed scripts/list (Cosmin).
  Updated copyright year in scripts/pngwin.def (Cosmin).
  Removed PNG_TYPECAST_NULL and used standard NULL consistently (Cosmin).
  Disallowed the user to redefine png_size_t, and enforced a consistent use
    of png_size_t across libpng (Cosmin).
  Changed the type of png_ptr->rowbytes, PNG_ROWBYTES() and friends
    to png_size_t (Cosmin).
  Removed png_convert_size() and replaced png_sizeof with sizeof (Cosmin).
  Removed some unnecessary type casts (Cosmin).
  Changed prototype of png_get_compression_buffer_size() and
    png_set_compression_buffer_size() to work with png_size_t instead of
    png_uint_32 (Cosmin).
  Removed png_memcpy_check() and png_memset_check() (Cosmin).
  Fixed a typo (png_byte --> png_bytep) in libpng.3 and libpng.txt (Cosmin).
  Clarified that png_zalloc() does not clear the allocated memory,
    and png_zalloc() and png_zfree() cannot be PNGAPI (Cosmin).
  Renamed png_mem_size_t to png_alloc_size_t, fixed its definition in
    pngconf.h, and used it in all memory allocation functions (Cosmin).
  Renamed pngintrn.h to pngpriv.h, added a comment at the top of the file
    mentioning that the symbols declared in that file are private, and
    updated the scripts and the Visual C++ projects accordingly (Cosmin).
  Removed circular references between pngconf.h and pngconf.h.in in
    scripts/makefile.vc*win32 (Cosmin).
  Removing trailing '.' from the warning and error messages (Cosmin).
  Added pngdefs.h that is built by makefile or configure, instead of
    pngconf.h.in (Glenn).
  Detect and fix attempt to write wrong iCCP profile length.

Version 1.4.0beta12 [October 19, 2006]
  Changed "logical" to "bitwise" in the documentation.
  Work around Intel-Mac compiler bug by setting PNG_NO_MMX_CODE in pngconf.h
  Add a typecast to stifle compiler warning in pngrutil.c

Version 1.4.0beta13 [November 10, 2006]
  Fix potential buffer overflow in sPLT chunk handler.
  Fix Makefile.am to not try to link to noexistent files.

Version 1.4.0beta14 [November 15, 2006]
  Check all exported functions for NULL png_ptr.

Version 1.4.0beta15 [November 17, 2006]
  Relocated two misplaced tests for NULL png_ptr.
  Built Makefile.in with automake-1.9.6 instead of 1.9.2.
  Build configure with autoconf-2.60 instead of 2.59
  Add "install: all" in Makefile.am so "configure; make install" will work.

Version 1.4.0beta16 [November 17, 2006]
  Added a typecast in png_zalloc().

Version 1.4.0beta17 [December 4, 2006]
  Changed "new_key[79] = '\0';" to "(*new_key)[79] = '\0';" in pngwutil.c
  Add "png_bytep" typecast to profile while calculating length in pngwutil.c

Version 1.4.0beta18 [December 7, 2006]
  Added scripts/CMakeLists.txt

Version 1.4.0beta19 [May 16, 2007]
  Revised scripts/CMakeLists.txt
  Rebuilt configure and Makefile.in with newer tools.
  Added conditional #undef jmpbuf in pngtest.c to undo #define in AIX headers.
  Added scripts/makefile.nommx

Version 1.4.0beta20 [July 9, 2008]
  Moved several PNG_HAVE_* macros from pngpriv.h to png.h because applications
    calling set_unknown_chunk_location() need them.
  Moved several macro definitions from pngpriv.h to pngconf.h
  Merge with changes to the 1.2.X branch, as of 1.2.30beta04.
  Deleted all use of the MMX assembler code and Intel-licensed optimizations.
  Revised makefile.mingw

Version 1.4.0beta21 [July 21, 2008]
  Moved local array "chunkdata" from pngrutil.c to the png_struct, so
    it will be freed by png_read_destroy() in case of a read error (Kurt
    Christensen).

Version 1.4.0beta22 [July 21, 2008]
  Change "purpose" and "buffer" to png_ptr->chunkdata to avoid memory leaking.

Version 1.4.0beta23 [July 22, 2008]
  Change "chunkdata = NULL" to "png_ptr->chunkdata = NULL" several places in
    png_decompress_chunk().

src/Source/LibPNG/CHANGES  view on Meta::CPAN

  Eliminated useless call to png_check_cHRM() from pngset.c

Version 1.4.0beta83 [September 25, 2009]
  Revised png_check_IHDR() to eliminate bogus complaint about filter_type.

Version 1.4.0beta84 [September 30, 2009]
  Fixed some inconsistent indentation in pngconf.h
  Revised png_check_IHDR() to add a test for width variable less than 32-bit.

Version 1.4.0beta85 [October 1, 2009]
  Revised png_check_IHDR() again, to check info_ptr members instead of
    the contents of the returned parameters.

Version 1.4.0beta86 [October 9, 2009]
  Updated the "xcode" project (Alam Arias).
  Eliminated a shadowed declaration of "pp" in png_handle_sPLT().

Version 1.4.0rc01 [October 19, 2009]
  Trivial cosmetic changes.

Version 1.4.0beta87 [October 30, 2009]
  Moved version 1.4.0 back into beta.

Version 1.4.0beta88 [October 30, 2009]
  Revised libpng*.txt section about differences between 1.2.x and 1.4.0
    because most of the new features have now been ported back to 1.2.41

Version 1.4.0beta89 [November 1, 2009]
  More bugfixes and improvements to CMakeLists.txt (Philip Lowman)
  Removed a harmless extra png_set_invert_alpha() from pngwrite.c
  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.4.0beta90 [November 2, 2009]
  Removed all remaining WIN32_WCE #ifdefs except those involving the
    time.h "tm" structure

Version 1.4.0beta91 [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.4.0beta92 [November 4, 2009]
  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
  Revised libpng*.txt to describe differences from 1.2.40 to 1.4.0 (instead
    of differences from 1.2.41 to 1.4.0)

Version 1.4.0beta93 [November 7, 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".
    They should work but still need to be updated to remove
    references to pnggccrd.c or pngvcrd.c and ASM building.
  Added README.txt to the beos, cbuilder5, netware, and xcode projects warning
    that they need to be updated, to remove references to pnggccrd.c and
    pngvcrd.c and to depend on pngpriv.h
  Removed three direct references to read_info_ptr members in pngtest.c
    that were detected by the new PNG_DEPSTRUCT macro.
  Moved the png_debug macro definitions and the png_read_destroy(),
    png_write_destroy() and png_far_to_near() prototypes from png.h
    to pngpriv.h (John Bowler)
  Moved the synopsis lines for png_read_destroy(), png_write_destroy()
    png_debug(), png_debug1(), and png_debug2() from libpng.3 to libpngpf.3.

Version 1.4.0beta94 [November 9, 2009]
  Removed the obsolete, unused pnggccrd.c and pngvcrd.c files.
  Updated CMakeLists.txt to add "-DPNG_CONFIGURE_LIBPNG" to the definitions.
  Removed dependency of pngtest.o on pngpriv.h in the makefiles.
  Only #define PNG_DEPSTRUCT, etc. in pngconf.h if not already defined.

Version 1.4.0beta95 [November 10, 2009]
  Changed png_check_sig() to !png_sig_cmp() in contrib programs.
  Added -DPNG_CONFIGURE_LIBPNG to contrib/pngminm/*/makefile
  Changed png_check_sig() to !png_sig_cmp() in contrib programs.
  Corrected the png_get_IHDR() call in contrib/gregbook/readpng2.c
  Changed pngminim/*/gather.sh to stop trying to remove pnggccrd.c and pngvcrd.c
  Added dependency on pngpriv.h in contrib/pngminim/*/makefile

Version 1.4.0beta96 [November 12, 2009]
  Renamed scripts/makefile.wce to scripts/makefile.cegcc
  Revised Makefile.am to use libpng.sys while building libpng.so
    so that only PNG_EXPORT functions are exported.
  Removed the deprecated png_check_sig() function/macro.
  Removed recently removed function names from scripts/*.def
  Revised pngtest.png to put chunks in the same order written by pngtest
    (evidently the same change made in libpng-1.0beta54 was lost).
  Added PNG_PRIVATE macro definition in pngconf.h for possible future use.

Version 1.4.0beta97 [November 13, 2009]
  Restored pngtest.png to the libpng-1.4.0beta7 version.
  Removed projects/beos and netware.txt; no one seems to be supporting them.
  Revised Makefile.in

Version 1.4.0beta98 [November 13, 2009]
  Added the "xcode" project to zip distributions,
  Fixed a typo in scripts/pngwin.def introduced in beta97.

Version 1.4.0beta99 [November 14, 2009]
  Moved libpng-config.in and libpng.pc-configure.in out of the scripts
    directory, to libpng-config.in and libpng-pc.in, respectively, and
    modified Makefile.am and configure.ac accordingly.  Now "configure"
    needs nothing from the "scripts" directory.
  Avoid redefining PNG_CONST in pngconf.h

Version 1.4.0beta100 [November 14, 2009]
  Removed ASM builds from projects/visualc6 and projects/visualc71
  Removed scripts/makefile.nommx and makefile.vcawin32
  Revised CMakeLists.txt to account for new location of libpng-config.in
    and libpng-pc.in
  Updated INSTALL to reflect removal and relocation of files.

Version 1.4.0beta101 [November 14, 2009]
  Restored the binary files (*.jpg, *.png, some project files) that were
    accidentally deleted from the zip and 7z distributions when the xcode
    project was added.

src/Source/LibPNG/CHANGES  view on Meta::CPAN

  Revised the makefiles to install the same files and symbolic
    links as configure, except for libpng.la and libpng14.la.
  Make png_set|get_compression_buffer_size() available even when
    PNG_WRITE_SUPPORTED is not enabled.
  Revised Makefile.am and Makefile.in to simplify their maintenance.
  Revised scripts/makefile.linux to install a link to libpng14.so.14.1

Version 1.4.1beta02 [January 9, 2010]
  Revised the rest of the makefiles to install a link to libpng14.so.14.1

Version 1.4.1beta03 [January 10, 2010]
  Removed png_set_premultiply_alpha() from scripts/*.def

Version 1.4.1rc01 [January 16, 2010]
  No changes.

Version 1.4.1beta04 [January 23, 2010]
  Revised png_decompress_chunk() to improve speed and memory usage when
    decoding large chunks.
  Added png_set|get_chunk_malloc_max() functions.

Version 1.4.1beta05 [January 26, 2010]
  Relocated "int k" declaration in pngtest.c to minimize its scope.

Version 1.4.1beta06 [January 28, 2010]
  Revised png_decompress_chunk() to use a two-pass method suggested by
    John Bowler.

Version 1.4.1beta07 [February 6, 2010]
  Folded some long lines in the source files.
  Added defineable PNG_USER_CHUNK_CACHE_MAX, PNG_USER_CHUNK_MALLOC_MAX,
    and a PNG_USER_LIMITS_SUPPORTED flag.
  Eliminated use of png_ptr->irowbytes and reused the slot in png_ptr as
    png_ptr->png_user_chunk_malloc_max.
  Revised png_push_save_buffer() to do fewer but larger png_malloc() calls.

Version 1.4.1beta08 [February 6, 2010]
  Minor cleanup and updating of dates and copyright year.

Version 1.5.0beta01 [February 7, 2010]
  Moved declaration of png_struct into private pngstruct.h and png_info
    into pnginfo.h

Version 1.4.1beta09 and 1.5.0beta02 [February 7, 2010]
  Reverted to original png_push_save_buffer() code.

Version 1.4.1beta10 and 1.5.0beta03 [February 8, 2010]
  Return allocated "old_buffer" in png_push_save_buffer() before
    calling png_error(), to avoid a potential memory leak.
  Updated configure script to use SO number 15.

Version 1.5.0beta04 [February 9, 2010]
  Removed malformed "incomplete struct declaration" of png_info from png.h

Version 1.5.0beta05 [February 12, 2010]
  Removed PNG_DEPSTRUCT markup in pngstruct.h and pnginfo.h, and undid the
    linewrapping that it entailed.
  Revised comments in pngstruct.h and pnginfo.h and added pointers to
    the libpng license.
  Changed PNG_INTERNAL to PNG_EXPOSE_INTERNAL_STRUCTURES
  Removed the cbuilder5 project, which has not been updated to 1.4.0.

Version 1.4.1beta12 and 1.5.0beta06 [February 14, 2010]
  Fixed type declaration of png_get_chunk_malloc_max() in pngget.c (Daisuke
    Nishikawa)

Version 1.5.0beta07 [omitted]

Version 1.5.0beta08 [February 19, 2010]
  Changed #ifdef PNG_NO_STDIO_SUPPORTED to #ifdef PNG_NO_CONSOLE_IO_SUPPORTED
    wherever png_snprintf() is used to construct error and warning messages.
  Noted in scripts/makefile.mingw that it expects to be run under MSYS.
  Removed obsolete unused MMX-querying support from contrib/gregbook
  Added exported png_longjmp() function.
  Removed the AIX redefinition of jmpbuf in png.h
  Added -D_ALLSOURCE in configure.ac, makefile.aix, and CMakeLists.txt
    when building on AIX.

Version 1.5.0beta09 [February 19, 2010]
  Removed -D_ALLSOURCE from configure.ac, makefile.aix, and CMakeLists.txt.
  Changed the name of png_ptr->jmpbuf to png_ptr->png_jmpbuf in pngstruct.h

Version 1.5.0beta10 [February 25, 2010]
  Removed unused gzio.c from contrib/pngminim gather and makefile scripts
  Removed replacement error handlers from contrib/gregbook.  Because of
    the new png_longjmp() function they are no longer needed.

Version 1.5.0beta11 [March 6, 2010]
  Removed checking for already-included setjmp.h from pngconf.h
  Fixed inconsistent indentations and made numerous cosmetic changes.
  Revised the "SEE ALSO" style of libpng.3, libpngpf.3, and png.5

Version 1.5.0beta12 [March 9, 2010]
  Moved "#include png.h" inside pngpriv.h and removed "#include png.h" from
    the source files, along with "#define PNG_EXPOSE_INTERNAL_STRUCTURES"
    and "#define PNG_NO_PEDANTIC_WARNINGS" (John Bowler).
  Created new pngdebug.h and moved debug definitions there.

Version 1.5.0beta13 [March 10, 2010]
  Protect pngstruct.h, pnginfo.h, and pngdebug.h from being included twice.
  Revise the "#ifdef" blocks in png_inflate() so it will compile when neither
    PNG_USER_CHUNK_MALLOC_MAX nor PNG_SET_CHUNK_MALLOC_LIMIT_SUPPORTED
    is defined.
  Removed unused png_measure_compressed_chunk() from pngpriv.h and libpngpf.3
  Moved the 'config.h' support from pngconf.h to pngpriv.h
  Removed PNGAPI from the png_longjmp_ptr typedef.
  Eliminated dependence of pngtest.c on the private pngdebug.h file.
  Make all png_debug macros into *unterminated* statements or
    expressions (i.e. a trailing ';' must always be added) and correct
    the format statements in various png_debug messages.

Version 1.5.0beta14 [March 14, 2010]
  Removed direct access to png_ptr->io_ptr from the Windows code in pngtest.c
  Revised Makefile.am to account for recent additions and replacements.
  Corrected CE and OS/2 DEF files (scripts/png*def) for symbols removed and
    added ordinal numbers to the Windows DEF file and corrected the duplicated
    ordinal numbers on CE symbols that are commented out.
  Added back in export symbols that can be present in the Windows build but
    are disabled by default.
  PNG_EXPORT changed to include an 'ordinal' field for DEF file generation.
    PNG_CALLBACK added to make callback definitions uniform.  PNGAPI split
    into PNGCAPI (base C form), PNGAPI (exports) and PNGCBAPI (callbacks),
    and appropriate changes made to all files.  Cygwin builds re-hinged to
    allow procedure call standard changes and to remove the need for the DEF
    file (fixes build on Cygwin).
  Enabled 'attribute' warnings that are relevant to library APIs and callbacks.
  Changed rules for generation of the various symbol files and added a new
    rule for a DEF file (which is also added to the distribution).
  Updated the symbol file generation to stop it adding spurious spaces
    to EOL (coming from preprocessor macro expansion).  Added a facility
    to join tokens in the output and rewrite *.dfn to use this.
  Eliminated scripts/*.def in favor of libpng.def; updated projects/visualc71
    and removed scripts/makefile.cygwin.
  Made PNG_BUILD_DLL safe: it can be set whenever a DLL is being built.
  Removed the include of sys/types.h - apparently unnecessary now on the
    platforms on which it happened (all but Mac OS and RISC OS).
  Moved the Mac OS test into pngpriv.h (the only place it is used.)

Version 1.5.0beta15 [March 17, 2010]
  Added symbols.chk target to Makefile.am to validate the symbols in png.h
    against the new DEF file scripts/symbols.def.
  Changed the default DEF file back to pngwin.def.
  Removed makefile.mingw.
  Eliminated PNG_NO_EXTERN and PNG_ALL_EXTERN

Version 1.5.0beta16 [April 1, 2010]
  Make png_text_struct independent of PNG_iTXt_SUPPORTED, so that
    fields are initialized in all configurations.  The READ/WRITE
    macros (PNG_(READ|WRITE)_iTXt_SUPPORTED) still function as
    before to disable code to actually read or write iTXt chunks
    and iTXt_SUPPORTED can be used to detect presence of either
    read or write support (but it is probably better to check for
    the one actually required - read or write.)
  Combined multiple png_warning() calls for a single error.
  Restored the macro definition of png_check_sig().

Version 1.5.0beta17 [April 17, 2010]
  Added some "(long)" typecasts to printf calls in png_handle_cHRM().
  Documented the fact that png_set_dither() was disabled since libpng-1.4.0.
  Reenabled png_set_dither() but renamed it to png_set_quantize() to reflect
    more accurately what it actually does.  At the same time, renamed
    the PNG_DITHER_[RED,GREEN_BLUE]_BITS macros to
    PNG_QUANTIZE_[RED,GREEN,BLUE]_BITS.
  Added some "(long)" typecasts to printf calls in png_handle_cHRM().
  Freeze build-time only configuration in the build.
    In all prior versions of libpng most configuration options
    controlled by compiler #defines had to be repeated by the
    application code that used libpng.  This patch changes this
    so that compilation options that can only be changed at build
    time are frozen in the build.  Options that are compiler
    dependent (and those that are system dependent) are evaluated
    each time - pngconf.h holds these.  Options that can be changed
    per-file in the application are in png.h.  Frozen options are
    in the new installed header file pnglibconf.h (John Bowler)
  Removed the xcode project because it has not been updated to work
    with libpng-1.5.0.
  Removed the ability to include optional pngusr.h

Version 1.5.0beta18 [April 17, 2010]
  Restored the ability to include optional pngusr.h
  Moved replacements for png_error() and png_warning() from the
    contrib/pngminim project to pngerror.c, for use when warnings or
    errors are disabled via PNG_NO_WARN or PNG_NO_ERROR_TEXT, to avoid
    storing unneeded error/warning text.
  Updated contrib/pngminim project to work with the new pnglibconf.h
  Added some PNG_NO_* defines to contrib/pngminim/*/pngusr.h to save space.

Version 1.5.0beta19 [April 24, 2010]
  Added PNG_{READ,WRITE}_INT_FUNCTIONS_SUPPORTED.  This allows the functions
    to read and write ints to be disabled independently of PNG_USE_READ_MACROS,
    which allows libpng to be built with the functions even though the default
    is to use the macros - this allows applications to choose at app build
    time whether or not to use macros (previously impossible because the
    functions weren't in the default build.)
  Changed Windows calling convention back to __cdecl for API functions.
    For Windows/x86 platforms only:
      __stdcall is no longer needed for Visual Basic, so libpng-1.5.0 uses
      __cdecl throughout (both API functions and callbacks) on Windows/x86
      platforms.
  Replaced visualc6 and visualc71 projects with new vstudio project
  Relaxed the overly-restrictive permissions of some files.

Version 1.5.0beta20 [April 24, 2010]
  Relaxed more overly-restrictive permissions of some files.

Version 1.5.0beta21 [April 27, 2010]
  Removed some unwanted binary bytes and changed CRLF to NEWLINE in the new
    vstudio project files, and some trivial editing of some files in the
    scripts directory.
  Set PNG_NO_READ_BGR, PNG_NO_IO_STATE, and PNG_NO_TIME_RFC1123 in
    contrib/pngminim/decoder/pngusr.h to make a smaller decoder application.

Version 1.5.0beta22 [April 28, 2010]
  Fixed dependencies of GET_INT_32 - it does not require READ_INT_FUNCTIONS
    because it has a macro equivalent.
  Improved the options.awk script; added an "everything off" option.
  Revised contrib/pngminim to use the "everything off" option in pngusr.dfa.

Version 1.5.0beta23 [April 29, 2010]
  Corrected PNG_REMOVED macro to take five arguments.
    The macro was documented with two arguments (name,ordinal), however
    the symbol checking .dfn files assumed five arguments.  The five
    argument form seems more useful so it is changed to that.
  Corrected PNG_UNKNOWN_CHUNKS_SUPPORTED to PNG_HANDLE_AS_UNKNOWN_SUPPORTED
    in gregbook/readpng2.c
  Corrected protection of png_get_user_transform_ptr. The API declaration in
    png.h is removed if both READ and WRITE USER_TRANSFORM are turned off
    but was left defined in pngtrans.c
  Added logunsupported=1 to cause pnglibconf.h to document disabled options.
    This makes the installed pnglibconf.h more readable but causes no
    other change.  The intention is that users of libpng will find it
    easier to understand if an API they need is missing.
  Include png_reset_zstream() in png.c only when PNG_READ_SUPPORTED is defined.
  Removed dummy_inflate.c from contrib/pngminim/encoder
  Removed contrib/pngminim/*/gather.sh; gathering is now done in the makefile.

src/Source/LibPNG/CHANGES  view on Meta::CPAN

  Eliminated more GCC "shadow" warnings.
  Revised png_fixed() in png.c to avoid compiler warning about reaching the
    end without returning anything.

Version 1.5.1beta07 [January 22, 2011]
  In the manual, describe the png_get_IHDR() arguments in the correct order.
  Added const_png_structp and const_png_infop types, and used them in
    prototypes for most png_get_*() functions.

Version 1.5.1beta08 [January 23, 2011]
  Added png_get_io_chunk_type() and deprecated png_get_io_chunk_name()
  Added synopses for the IO_STATE functions and other missing synopses
    to the manual. Removed the synopses from libpngpf.3 because they
    were out of date and no longer useful.  Better information can be
    obtained by reading the prototypes and comments in pngpriv.h
  Attempted to fix cpp on Solaris with S. Studio 12 cc, fix build
    Added a make macro DFNCPP that is a CPP that will accept the tokens in
    a .dfn file and adds configure stuff to test for such a CPP.  ./configure
    should fail if one is not available.
  Corrected const_png_ in png.h to png_const_ to avoid polluting the namespace.
  Added png_get_current_row_number and png_get_current_pass_number for the
    benefit of the user transform callback.
  Added png_process_data_pause and png_process_data_skip for the benefit of
    progressive readers that need to stop data processing or want to optimize
    skipping of unread data (e.g., if the reader marks a chunk to be skipped.)

Version 1.5.1beta09 [January 24, 2011]
  Enhanced pngvalid, corrected an error in gray_to_rgb, corrected doc error.
    pngvalid contains tests of transforms, which tests are currently disabled
    because they are incompletely tested.  gray_to_rgb was failing to expand
    the bit depth for smaller bit depth images; this seems to be a long
    standing error and resulted, apparently, in invalid output
    (CVE-2011-0408, CERT VU#643140).  The documentation did not accurately
    describe what libpng really does when converting RGB to gray.

Version 1.5.1beta10 [January 27, 2010]
  Fixed incorrect examples of callback prototypes in the manual, that were
    introduced in libpng-1.0.0.
  In addition the order of the png_get_uint macros with respect to the
    relevant function definitions has been reversed.  This helps the
    preprocessing of the symbol files be more robust.  Furthermore, the
    symbol file preprocessing now uses -DPNG_NO_USE_READ_MACROS even when
    the library may actually be built with PNG_USE_READ_MACROS; this stops
    the read macros interfering with the symbol file format.
  Made the manual, synopses, and function prototypes use the function
    argument names file_gamma, int_file_gamma, and srgb_intent consistently.

Version 1.5.1beta11 [January 28, 2011]
  Changed PNG_UNUSED from "param=param;" to "{if(param){}}".
  Corrected local variable type in new API png_process_data_skip()
    The type was self-evidently incorrect but only causes problems on 64-bit
    architectures.
  Added transform tests to pngvalid and simplified the arguments.

Version 1.5.1rc01 [January 29, 2011]
  No changes.

Version 1.5.1rc02 [January 31, 2011]
  Added a request in the manual that applications do not use "png_" or
    "PNG_" to begin any of their own symbols.
  Changed PNG_UNUSED to "(void)param;" and updated the commentary in pngpriv.h

Version 1.5.1 [February 3, 2011]
  No changes.

Version 1.5.2beta01 [February 13, 2011]
  More -Wshadow fixes for older gcc compilers.  Older gcc versions apparently
    check formal parameters names in function declarations (as well as
    definitions) to see if they match a name in the global namespace.
  Revised PNG_EXPORTA macro to not use an empty parameter, to accommodate the
    old VisualC++ preprocessor.
  Turned on interlace handling in png_read_png().
  Fixed gcc pendantic warnings.
  Handle longjmp in Cygwin.
  Fixed png_get_current_row_number() in the interlaced case.
  Cleaned up ALPHA flags and transformations.
  Implemented expansion to 16 bits.

Version 1.5.2beta02 [February 19, 2011]
  Fixed mistake in the descriptions of user read_transform and write_transform
    function prototypes in the manual.  The row_info struct is png_row_infop.
  Reverted png_get_current_row_number() to previous (1.5.2beta01) behavior.
  Corrected png_get_current_row_number documentation
  Fixed the read/write row callback documentation.
    This documents the current behavior, where the callback is called after
    every row with information pertaining to the next row.

Version 1.5.2beta03 [March 3, 2011]
  Fixed scripts/makefile.vcwin32
  Updated contrib/pngsuite/README to add the word "modify".
  Define PNG_ALLOCATED to blank when _MSC_VER<1300.

Version 1.5.2rc01 [March 19, 2011]
  Define remaining attributes to blank when MSC_VER<1300.
  ifdef out mask arrays in pngread.c when interlacing is not supported.

Version 1.5.2rc02 [March 22, 2011]
  Added a hint to try CPP=/bin/cpp if "cpp -E" fails in scripts/pnglibconf.mak
    and in contrib/pngminim/*/makefile, eg., on SunOS 5.10, and removed "strip"
    from the makefiles.
  Fixed a bug (present since libpng-1.0.7) that makes png_handle_sPLT() fail
    to compile when PNG_NO_POINTER_INDEXING is defined (Chubanov Kirill)

Version 1.5.2rc03 [March 24, 2011]
  Don't include standard header files in png.h while building the symbol table,
    to avoid cpp failure on SunOS (introduced PNG_BUILDING_SYMBOL_TABLE macro).

Version 1.5.2 [March 31, 2011]
  No changes.

Version 1.5.3beta01 [April 1, 2011]
  Re-initialize the zlib compressor before compressing non-IDAT chunks.
  Added API functions (png_set_text_compression_level() and four others) to
    set parameters for zlib compression of non-IDAT chunks.

Version 1.5.3beta02 [April 3, 2011]
  Updated scripts/symbols.def with new API functions.
  Only compile the new zlib re-initializing code when text or iCCP is
    supported, using PNG_WRITE_COMPRESSED_TEXT_SUPPORTED macro.
  Improved the optimization of the zlib CMF byte (see libpng-1.2.6beta03).
  Optimize the zlib CMF byte in non-IDAT compressed chunks

src/Source/LibPNG/CHANGES  view on Meta::CPAN

    The include path of 'config.h' was erroneously made relative in pngvalid.c
    in libpng 1.5.7.

Version 1.6.0beta03 [December 22, 2011]
  Start-up code size improvements, error handler flexibility. These changes
    alter how the tricky allocation of the initial png_struct and png_info
    structures are handled. png_info is now handled in pretty much the same
    way as everything else, except that the allocations handle NULL return
    silently.  png_struct is changed in a similar way on allocation and on
    deallocation a 'safety' error handler is put in place (which should never
    be required).  The error handler itself is changed to permit mismatches
    in the application and libpng error buffer size; however, this means a
    silent change to the API to return the jmp_buf if the size doesn't match
    the size from the libpng compilation; libpng now allocates the memory and
    this may fail.  Overall these changes result in slight code size
    reductions; however, this is a reduction in code that is always executed
    so is particularly valuable.  Overall on a 64-bit system the libpng DLL
    decreases in code size by 1733 bytes.  pngerror.o increases in size by
    about 465 bytes because of the new functionality.
  Added png_convert_to_rfc1123_buffer() and deprecated png_convert_to_rfc1123()
    to avoid including a spurious buffer in the png_struct.

Version 1.6.0beta04 [December 30, 2011]
  Regenerated configure scripts with automake-1.11.2
  Eliminated png_info_destroy(). It is now used only in png.c and only calls
    one other internal function and memset().
  Enabled png_get_sCAL_fixed() if floating point APIs are enabled. Previously
    it was disabled whenever internal fixed point arithmetic was selected,
    which meant it didn't exist even on systems where FP was available but not
    preferred.
  Added pngvalid.c compile time checks for const APIs.
  Implemented 'restrict' for png_info and png_struct. Because of the way
    libpng works both png_info and png_struct are always accessed via a
    single pointer.  This means adding C99 'restrict' to the pointer gives
    the compiler some opportunity to optimize the code.  This change allows
    that.
  Moved AC_MSG_CHECKING([if libraries can be versioned]) later to the proper
    location in configure.ac (Gilles Espinasse).
  Changed png_memcpy to C assignment where appropriate. Changed all those
    uses of png_memcpy that were doing a simple assignment to assignments
    (all those cases where the thing being copied is a non-array C L-value).
  Added some error checking to png_set_*() routines.
  Removed the reference to the non-exported function png_memcpy() from
    example.c.
  Fixed the Visual C 64-bit build - it requires jmp_buf to be aligned, but
    it had become misaligned.
  Revised contrib/pngminus/pnm2png.c to avoid warnings when png_uint_32
    and unsigned long are of different sizes.

Version 1.6.0beta05 [January 15, 2012]
  Updated manual with description of the simplified API (copied from png.h)
  Fix bug in pngerror.c: some long warnings were being improperly truncated
    (CVE-2011-3464, bug introduced in libpng-1.5.3beta05).

Version 1.6.0beta06 [January 24, 2012]
  Added palette support to the simplified APIs. This commit
    changes some of the macro definitions in png.h, app code
    may need corresponding changes.
  Increased the formatted warning buffer to 192 bytes.
  Added color-map support to simplified API. This is an initial version for
    review; the documentation has not yet been updated.
  Fixed Min/GW uninstall to remove libpng.dll.a

Version 1.6.0beta07 [January 28, 2012]
  Eliminated Intel icc/icl compiler warnings. The Intel (GCC derived)
    compiler issues slightly different warnings from those issued by the
    current vesions of GCC. This eliminates those warnings by
    adding/removing casts and small code rewrites.
  Updated configure.ac from autoupdate: added --enable-werror option.
    Also some layout regularization and removal of introduced tab characters
    (replaced with 3-character indentation).  Obsolete macros identified by
    autoupdate have been removed; the replacements are all in 2.59 so
    the pre-req hasn't been changed.  --enable-werror checks for support
    for -Werror (or the given argument) in the compiler.  This mimics the
    gcc configure option by allowing -Werror to be turned on safely; without
    the option the tests written in configure itself fail compilation because
    they cause compiler warnings.
  Rewrote autogen.sh to run autoreconf instead of running tools one-by-one.
  Conditionalize the install rules for MINGW and CYGWIN in CMakeLists.txt and
    set CMAKE_LIBRARY_OUTPUT_DIRECTORY to "lib" on all platforms (C. Yapp).
  Freeze libtool files in the 'scripts' directory. This version of autogen.sh
    attempts to dissuade people from running it when it is not, or should not,
    be necessary.  In fact, autogen.sh does not work when run in a libpng
    directory extracted from a tar distribution anymore. You must run it in
    a GIT clone instead.
  Added two images to contrib/pngsuite (1-bit and 2-bit transparent grayscale),
    and renamed three whose names were inconsistent with those in
    pngsuite/README.txt.

Version 1.6.0beta08 [February 1, 2012]
  Fixed Image::colormap misalignment in pngstest.c
  Check libtool/libtoolize version number (2.4.2) in configure.ac
  Divide test-pngstest.sh into separate pngstest runs for basic and
    transparent images.
  Moved automake options to AM_INIT_AUTOMAKE in configure.ac
  Added color-tests, silent-rules (Not yet implemented in Makefile.am) and
    version checking to configure.ac
  Improved pngstest speed by not doing redundant tests and add const to
    the background parameter of png_image_finish_read. The --background
    option is now done automagically only when required, so that commandline
    option no longer exists.
  Cleaned up pngpriv.h to consistently declare all functions and data.
    Also eliminated PNG_CONST_DATA, which is apparently not needed but we
    can't be sure until it is gone.
  Added symbol prefixing that allows all the libpng external symbols
    to be prefixed (suggested by Reuben Hawkins).
  Updated "ftbb*.png" list in the owatcom and vstudio projects.
  Fixed 'prefix' builds on clean systems. The generation of pngprefix.h
    should not require itself.
  Updated INSTALL to explain that autogen.sh must be run in a GIT clone,
    not in a libpng directory extracted from a tar distribution.

Version 1.6.0beta09 [February 1, 2012]
  Reverted the prebuilt configure files to libpng-1.6.0beta05 condition.

Version 1.6.0beta10 [February 3, 2012]
  Added Z_SOLO for zlib-1.2.6+ and correct pngstest tests
  Updated list of test images in CMakeLists.txt
  Updated the prebuilt configure files to current condition.
  Revised INSTALL information about autogen.sh; it works in tar distributions.

src/Source/LibPNG/CHANGES  view on Meta::CPAN

  Added "tunknown" test and corrected a logic error in png_handle_unknown()
    when SAVE support is absent.  Moved the shell test scripts for
    contrib/libtests from the libpng top directory to contrib/libtests.
    png_handle_unknown() must always read or skip the chunk, if
    SAVE_UNKNOWN_CHUNKS is turned off *and* the application does not set
    a user callback an unknown chunk will not be read, leading to a read
    error, which was revealed by the "tunknown" test.
  Cleaned up and corrected ICC profile handling.
    contrib/libtests/makepng: corrected 'rgb' and 'gray' cases.  profile_error
    messages could be truncated; made a correct buffer size calculation and
    adjusted pngerror.c appropriately. png_icc_check_* checking improved;
    changed the functions to receive the correct color type of the PNG on read
    or write and check that it matches the color space of the profile (despite
    what the comments said before, there is danger in assuming the app will
    cope correctly with an RGB profile on a grayscale image and, since it
    violates the PNG spec, allowing it is certain to produce inconsistent
    app behavior and might even cause app crashes.) Check that profiles
    contain the tags needed to process the PNG (tags all required by the ICC
    spec). Removed unused PNG_STATIC from pngpriv.h.

Version 1.6.0beta29 [September 4, 2012]
  Fixed the simplified API example programs to add the *colormap parameter
    to several of he API and improved the error message if the version field
    is not set.
  Added contrib/examples/* to the *.zip and *.7z distributions.
  Updated simplified API synopses and description of the png_image structure
    in the manual.
  Made makepng and pngtest produce identical PNGs, add "--relaxed" option
    to pngtest. The "--relaxed" option turns off the benign errors that are
    enabled by default in pre-RC builds. makepng can now write ICC profiles
    where the length has not been extended to a multiple of 4, and pngtest
    now intercepts all libpng errors, allowing the previously-introduced
    "--strict test" on no warnings to actually work.
  Improved ICC profile handling including cHRM chunk generation and fixed
    Cygwin+MSVC build errors. The ICC profile handling now includes more
    checking.  Several errors that caused rejection of the profile are now
    handled with a warning in such a way that the invalid profiles will be
    read by default in release (but not pre-RC) builds but will not be
    written by default.  The easy part of handling the cHRM chunk is written,
    where the ICC profile contains the required data.  The more difficult
    part plus guessing a gAMA value requires code to pass selected RGB values
    through the profile.

Version 1.6.0beta30 [October 24, 2012]
  Changed ICC profile matrix/vector types to not depend on array type rules.
    By the ANSI-C standard the new types should be identical to the previous
    versions, and all known versions of gcc tested with the previous versions
    except for GCC-4.2.1 work with this version.  The change makes the ANSI-C
    rule that const applied to an array of elements applies instead to the
    elements in the array moot by explicitly applying const to the base
    elements of the png_icc_matrix and png_icc_vector types. The accidental
    (harmless) 'const' previously applied to the parameters of two of the
    functions have also been removed.
  Added a work around for GCC 4.2 optimization bug.
  Marked the broken (bad white point) original HP sRGB profiles correctly and
    correct comments.
  Added -DZ_SOLO to contrib/pngminim/*/makefile to work with zlib-1.2.7
  Use /MDd for vstudio debug builds. Also added pngunkown to the vstudio
    builds, fixed build errors and corrected a minor exit code error in
    pngvalid if the 'touch' file name is invalid.
  Add updated WARNING file to projects/vstudio from libpng 1.5/vstudio
  Fixed build when using #define PNG_NO_READ_GAMMA in png_do_compose() in
    pngrtran.c (Domani Hannes).

Version 1.6.0beta31 [November 1, 2012]
  Undid the erroneous change to vstudio/pngvalid build in libpng-1.6.0beta30.
  Made pngvalid so that it will build outside the libpng source tree.
  Made builds -DPNG_NO_READ_GAMMA compile (the unit tests still fail).
  Made PNG_NO_READ_GAMMA switch off interfaces that depend on READ_GAMMA.
    Prior to 1.6.0 switching off READ_GAMMA did unpredictable things to the
    interfaces that use it (specifically, png_do_background in 1.4 would
    simply display composite for grayscale images but do composition
    with the incorrect arithmetic for color ones). In 1.6 the semantic
    of -DPNG_NO_READ_GAMMA is changed to simply disable any interface that
    depends on it; this obliges people who set it to consider whether they
    really want it off if they happen to use any of the interfaces in
    question (typically most users who disable it won't).
  Fixed GUIDs in projects/vstudio. Some were duplicated or missing,
    resulting in VS2010 having to update the files.
  Removed non-working ICC profile support code that was mostly added to
    libpng-1.6.0beta29 and beta30. There was too much code for too little
    gain; implementing full ICC color correction may be desireable but is left
    up to applications.

Version 1.6.0beta32 [November 25, 2012]
  Fixed an intermittent SEGV in pngstest due to an uninitialized array element.
  Added the ability for contrib/libtests/makepng.c to make a PNG with just one
    color. This is useful for debugging pngstest color inaccuracy reports.
  Fixed error checking in the simplified write API (Olaf van der Spek)
  Made png_user_version_check() ok to use with libpng version 1.10.x and later.

Version 1.6.0beta33 [December 15, 2012]
  Fixed typo in png.c (PNG_SET_CHUNK_MALLOC_MAX should be PNG_CHUNK_MALLOC_MAX)
    that causes the MALLOC_MAX limit not to work (John Bowler)
  Change png_warning() to png_app_error() in pngwrite.c and comment the
    fall-through condition.
  Change png_warning() to png_app_warning() in png_write_tRNS().
  Rearranged the ARM-NEON optimizations: Isolated the machine specific code
    to the hardware subdirectory and added comments to pngrutil.c so that
    implementors of other optimizations know what to do.
  Fixed cases of unquoted DESTDIR in Makefile.am
  Rebuilt Makefile.in, etc., with autoconf-2.69 and automake-1.12.5.

Version 1.6.0beta34 [December 19, 2012]
  Cleaned up whitespace in the synopsis portion of the manpage "libpng.3"
  Disassembled the version number in scripts/options.awk (necessary for
    building on SunOs).

Version 1.6.0beta35 [December 23, 2012]
  Made default Zlib compression settings be configurable. This adds #defines to
    pnglibconf.h to control the defaults.
  Fixed Windows build issues, enabled ARM compilation. Various warnings issued
    by earlier versions of GCC fixed for Cygwin and Min/GW (which both use old
    GCCs.) ARM support is enabled by default in zlib.props (unsupported by
    Microsoft) and ARM compilation is made possible by deleting the check for
    x86. The test programs cannot be run because they are not signed.

Version 1.6.0beta36 [January 2, 2013]
  Discontinued distributing libpng-1.x.x.tar.bz2.
  Discontinued distributing libpng-1.7.0-1.6.0-diff.txt and similar.
  Rebuilt configure with autoconf-2.69 (inadvertently not done in beta33)



( run in 1.270 second using v1.01-cache-2.11-cpan-5b529ec07f3 )