pngcrush-1.7.77 has been released. It was built with libpng-1.6.13.
pngcrush-1.7.76 is released. It was built with libpng-1.6.12.
Fixed a bug with reducing 16-bit images to 8-bit using "-reduce" option
Restored calls to png_set_crc_action() which had been removed from
version 1.7.72 for some testing and inadvertently not restored.
Changed "fix" internal variable name to "salvage" (still set with "-fix")
Added code to fix/salvage PNG with "bad adaptive filter value" error.
Avoid calculating CRC during compression trials except for the last trial,
when the output is actually written.
pngcrush-1.7.71 is built with libpng-1.6.9. The Windows binaries are now built with TOO_FAR=32767 instead of the default 4096 which results in some files becoming slightly more compressed.
pngcrush-1.7.70 is built with libpng-1.6.8 and zlib-1.2.8. The "-bit_depth N" option has been removed because it did not always work.
pngcrush-1.7.67 fixes a bug in the textual chunk insertion, introduced around version 1.7.62.
pngcrush-1.7.66 is available. It fixes a bug in recent versions (1.7.60 through 65) that handled the "-reduce" option improperly, such that the alpha channel was stripped even when it was not opaque.
A bug was introduced in libpng-1.7.61, released yesterday, that caused pngcrush to handle single-character options like "-v" incorrectly. This bug is fixed in 1.7.62.
The palette-truncation wasn't always working correctly so it's no longer automatically enabled by the "-reduce" or "-new" options.
pngcrush-1.7.56 has been released to fix a bug with reading sub-8-bit files when built with the system libpng (the "-nolib" distribution). There was no problem when previous versions were built with the bundled libpng and zlib.
pngcrush-1.7.54 is built with libpng-1.6.1rc01 and zlib-220.127.116.11; nothing within pngcrush itself was changed.
pngcrush-1.7.52 fixes some initialization problems that were introduced in versions 1.7.50 and 1.7.51. The new "-reduce" options appears to be working properly now.
This version is built with libpng-1.6.1beta06 and zlib-1.2.7.
pngcrush-1.7.47 has been released. This fixes a bug in versions 1.7.45 and 46 that caused them to fail to write an output file.
pngcrush-1.7.41 has been released. It fixes a bug, introduced in version 1.7.39, which causes pngcrush to fail to open an output file.
pngcrush-1.7.12 is built with libpng-1.4.4beta05 and zlib-1.2.5
pngcrush-1.7.11 is built with libpng-1.4.2 and zlib-1.2.5
The contents of text chunks following IDAT are now displayed when the "-n" option is used. Previously they were only shown when a crushed output file was written.
This version is built with libpng-1.2.40. Some additional checks for "version" have been added, to make the "-s" option a little more silent.
The bundled libpng files are updated to version 1.2.39.
pngcrush-1.7.0 supports the APNG chunks. They are preserved only if the output file has the ".apng" extension and the bit-depth and color_type are not changed. Otherwise a warning is issued and the chunks (acTL, fcTL, and fdAT) are discarded if any are found in the input file.
This fixes a major bug introduced in version 1.6.17 that caused an erroneous error message to be issued, due to a missing pair of curly braces.
Built with libpng-1.2.37
Fixed two double-FCLOSE()
This version identifies and reports on the presence of the Xcode CgBI chunk.
pngcrush-1.6.15 was released a couple of weeks ago, and a "git" repository has been established on SourceForge, with history going back to version 1.2.0. Earlier versions were not open source.
pngcrush-1.6.14 is built with libpng-1.2.35, to avoid the vulnerability CVE-2009-0040. Malevolent input could cause the libpng application to attempt to free ininitialized, non-NULL pointers.