* Set "things_have_changed" flag when adding text chunks, so the "-force"
option is no longer necessary when adding text to an already-compressed
file.
* Direct usage message and error messages to stderr instead of stdout. If
anyone is still using DOS they may have to change the "if 0" at line
990 to "if 1".
* Added "pngcrush -n -v files.png" to the usage message.
* Removed the call to png_read_transform_info() when the system libpng
is being used, so it can be built with a system libpng.
Changes 1.7.19:
* pngcrush-1.7.18 failed to read interlaced PNGs. Reverted the change
from calling png_read_transform_info() to png_read_update_info().
Since png_read_transform_info() is not exported we again cannot build
with the system libpng15.
Changes 1.7.18:
* This version will work with either a "system" libpng14 or libpng15, or with
the embedded libpng15. The deprecated usage of libpng png_struct members
and unexported functions has been removed.
* Revised the format of the time report (all on one line so you can get
a nice compact report by piping the output to "grep coding").
* Built with libpng-1.5.1beta06 and zlib-1.2.5
* Removed WIN32_WCE support (libpng has dropped it already)
* Include zlib.h and define png_memcpy, etc., and revise the
png_get_iCCP() and png_set_iCCP() calls to be able to build
with bundled libpng-1.5.x. Pngcrush cannot be built yet with
a system libpng-1.5.x.
Moved PNG_UINT_CHNK and some other defines from pngcrush.h to pngcrush.c
Reject invalid color_type or bit_depth.
Changes 1.6.6:
Added dSIG support. Pngcrush will not rewrite an image containing
a dSIG chunk immediately following the IHDR chunk, unless the
dSIG is explicitly removed with "-rem dSIG" or explicitly kept
with "-keep dSIG". In the latter case the saved dSIG chunks will
become invalid if any changes are made to the datastream.
Fixed bug in writing unknown chunks from the end_info_ptr.
Changes 1.6.5:
Discontinued adding a new gAMA chunk when writing sRGB chunk.
Version 1.6.3 (built with libpng-1.2.9beta11 and zlib-1.2.3)
Fixed documentation of iTXt input (Shlomi Tal).
Removed #define PNG_INTERNAL and provided prototypes for some
internal libpng functions that are duplicated in pngcrush.c
* Fixed bug with "PNG_ROWBYTES" usage, introduced in version 1.6.1.
The bug could cause a crash and only affects the "nolib" builds.
* Converted C++ style (// ...) comments to C style (/* ... */).
* Defined TOO_FAR == 32767 in deflate.c (again). The definition was omitted
from version 1.6.0 when zlib was upgraded to version 1.2.3.
Changes 1.6.1:
* Copied non-exported libpng functions from libpng into pngcrush, to make
pngcrush play more nicely with shared libpng. These are ifdef'ed out when
a static library is being built with the bundled libpng and pngcrush.h is
included.
Changes 1.6.0:
* Moved ChangeLog out of pngcrush.c comments and into a separate file.
* Filtered pngcrush.c through "indent -kr" and "expand" for readability.
* Moved 550 lines of usage/help/copyright/license/version info to separate
function(s) and cleaned up significantly.
* Added some comments for ease of navigation and readability.
* Stripped out a bunch of ancient-libpng compatibility stuff.
* Defined PNG_UINT_* macros (pngcrush.h for now).
* Fixed unknown-chunk handling ("-rem alla" and "-rem gifx" now work).
* Created modified version of makefile that supports external zlib.
* Added support for methods using Z_RLE zlib strategy (zlib 1.2.x only).
* Documented -huffman option in usage screen.
* Added IDAT statistics to final per-file summary.
* Added utime() support to give output files same timestamps as input files.