From 25cb5bf3f7a6b7c9e71ffc9f26eefd7d8093a0c7 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Mon, 12 Aug 2013 20:13:00 +0000 Subject: update for libpng 1.6.3 + aMNG patch git-svn-id: http://svn.miranda-ng.org/main/trunk@5662 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/AdvaImg/src/LibPNG/ANNOUNCE | 117 +++++++++++++++++++++++++++++------- 1 file changed, 94 insertions(+), 23 deletions(-) (limited to 'plugins/AdvaImg/src/LibPNG/ANNOUNCE') diff --git a/plugins/AdvaImg/src/LibPNG/ANNOUNCE b/plugins/AdvaImg/src/LibPNG/ANNOUNCE index 346383d7b9..6ea2c2abcc 100644 --- a/plugins/AdvaImg/src/LibPNG/ANNOUNCE +++ b/plugins/AdvaImg/src/LibPNG/ANNOUNCE @@ -1,5 +1,5 @@ -Libpng 1.5.13 - September 27, 2012 +Libpng 1.6.3 - July 18, 2013 This is a public release of libpng, intended for use in production codes. @@ -8,35 +8,106 @@ Files available for download: Source files with LF line endings (for Unix/Linux) and with a "configure" script - libpng-1.5.13.tar.xz (LZMA-compressed, recommended) - libpng-1.5.13.tar.gz - libpng-1.5.13.tar.bz2 + libpng-1.6.3.tar.xz (LZMA-compressed, recommended) + libpng-1.6.3.tar.gz Source files with CRLF line endings (for Windows), without the "configure" script - lpng1513.7z (LZMA-compressed, recommended) - lpng1513.zip + lpng163.7z (LZMA-compressed, recommended) + lpng163.zip Other information: - libpng-1.5.13-README.txt - libpng-1.5.13-LICENSE.txt - -Changes since the last public release (1.5.12): - Do not compile PNG_DEPRECATED, PNG_ALLOC and PNG_PRIVATE when __GNUC__ < 3. - Removed references to png_zalloc() and png_zfree() from the manual. - Revised PNG_FP_EXPORT and PNG_FIXED_EXPORT macros to avoid generating - lone semicolons (patch ported from libpng-1.6.0beta11). - Corrected handling of the image array and the row_pointers array in example.c - When png_set_filler is used to strip a filler channel during write, the - code prior to 1.5 would ignore the case where the output required an - alpha channel or when the output was a palettized PNG. In libpng-1.5 the - ignorance was lost and libpng proceeded to strip the channel resulting - in a bad (potential memory overwrite) failure later. This reverts - the behavior to the pre-1.5 state but issues a warning. libpng-1.6 is - expected to issue an error on the erroneous png_set_filler call. - Use png_memset() consistently (pngmem.c contained some bare "memset" calls). + libpng-1.6.3-README.txt + libpng-1.6.3-LICENSE.txt + +Changes since the last public release (1.6.2): + + Revised stack marking in arm/filter_neon.S and configure.ac. + Ensure that NEON filter stuff is completely disabled when switched 'off'. + Previously the ARM NEON specific files were still built if the option + was switched 'off' as opposed to being explicitly disabled. + Test for 'arm*' not just 'arm' in the host_cpu configure variable. + Rebuilt the configure scripts. + Expanded manual paragraph about writing private chunks, particularly + the need to call png_set_keep_unknown_chunks() when writing them. + Avoid dereferencing NULL pointer possibly returned from + png_create_write_struct() (Andrew Church). + Calculate our own zlib windowBits when decoding rather than trusting the + CMF bytes in the PNG datastream. + Added an option to force maximum window size for inflating, which was + the behavior of libpng15 and earlier. + Added png-fix-itxt and png-fix-too-far-back to the built programs and + removed warnings from the source code and timepng that are revealed as + a result. + Detect wrong libpng versions linked to png-fix-too-far-back, which currently + only works with libpng versions that can be made to reliably fail when + the deflate data contains an out-of-window reference. This means only + 1.6 and later. + Fixed gnu issues: g++ needs a static_cast, gcc 4.4.7 has a broken warning + message which it is easier to work round than ignore. + Updated contrib/pngminus/pnm2png.c (Paul Stewart): + Check for EOF + Ignore "#" delimited comments in input file to pnm2png.c. + Fixed whitespace handling + Added a call to png_set_packing() + Initialize dimension values so if sscanf fails at least we have known + invalid values. + Attempt to detect configuration issues with png-fix-too-far-back, which + requires both the correct libpng and the correct zlib to function + correctly. + Check ZLIB_VERNUM for mismatches, enclose #error in quotes + Added information in the documentation about problems with and fixes for + the bad CRC and bad iTXt chunk situations. + Allow contrib/pngminus/pnm2png.c to compile without WRITE_INVERT and + WRITE_PACK supported (writes error message that it can't read P1 or + Improved png-fix-too-far-back usage message, added --suffix option. + Revised contrib/pngminim/*/makefile to generate pnglibconf.h with the + right zlib header files. + Separated CPPFLAGS and CFLAGS in contrib/pngminim/*/makefile + Removed a redundant test in png_set_IHDR(). + Added set(CMAKE_CONFIGURATION_TYPES ...) to CMakeLists.txt (Andrew Hundt) + Deleted set(CMAKE_BUILD_TYPE) block from CMakeLists.txt + Enclose the prototypes for the simplified write API in + #ifdef PNG_STDIO_SUPPORTED/#endif + Make ARM NEON support work at compile time (not just configure time). + This moves the test on __ARM_NEON__ into pngconf.h to avoid issues when + using a compiler that compiles for multiple architectures at one time. + Removed PNG_FILTER_OPTIMIZATIONS and PNG_ARM_NEON_SUPPORTED from + pnglibconf.h, allowing more of the decisions to be made internally + (pngpriv.h) during the compile. Without this, symbol prefixing is broken + under certain circumstances on ARM platforms. Now only the API parts of + the optimizations ('check' vs 'api') are exposed in the public header files + except that the new setting PNG_ARM_NEON_OPT documents how libpng makes the + decision about whether or not to use the optimizations. + Protect symbol prefixing against CC/CPPFLAGS/CFLAGS useage. + Previous iOS/Xcode fixes for the ARM NEON optimizations moved the test + on __ARM_NEON__ from configure time to compile time. This breaks symbol + prefixing because the definition of the special png_init_filter_functions + call was hidden at configure time if the relevant compiler arguments are + passed in CFLAGS as opposed to CC. This change attempts to avoid all + the confusion that would result by declaring the init function even when + it is not used, so that it will always get prefixed. + Revised libpng.3 so that "doclifter" can process it. + Revised example.c to illustrate use of PNG_DEFAULT_sRGB and PNG_GAMMA_MAC_18 + as parameters for png_set_gamma(). These have been available since + libpng-1.5.4. + Renamed contrib/tools/png-fix-too-far-back.c to pngfix.c and revised it + to check all compressed chunks known to libpng. + Updated documentation to show default behavior of benign errors correctly. + Only compile ARM code when PNG_READ_SUPPORTED is defined. + Fixed undefined behavior in contrib/tools/pngfix.c and added new strip + option. pngfix relied on undefined behavior and even a simple change from + gcc to g++ caused it to fail. The new strip option 'unsafe' has been + implemented and is the default if --max is given. Option names have + been clarified, with --strip=transform now stripping the bKGD chunk, + which was stripped previously with --strip=unused. + Added all documented chunk types to pngpriv.h + Unified pngfix.c source with libpng17. + Revised manual about changes in iTXt chunk handling made in libpng-1.6.0. + Added "/* SAFE */" comments in pngrutil.c and pngrtran.c where warnings + may be erroneously issued by code-checking applications. Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit -- cgit v1.2.3