[libpng16] Fixed incorrect handling of the iTXt compression flag

in pngrutil.c (bug report by Shunsaku Hirata).  Bug was introduced
in libpng-1.6.0.
This commit is contained in:
Glenn Randers-Pehrson 2014-09-27 09:37:50 -05:00
parent 1b3a9fd6bf
commit 48e6fad71c
3 changed files with 10 additions and 6 deletions

View File

@ -1,4 +1,4 @@
Libpng 1.6.14beta04 - September 19, 2014
Libpng 1.6.14beta04 - September 27, 2014
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.
@ -47,7 +47,9 @@ Version 1.6.14beta03 [September 19, 2014]
already defined. Revert floating point exception handling in pngvalid.c
to version 1.6.14beta01 behavior.
Version 1.6.14beta04 [September 19, 2014]
Version 1.6.14beta04 [September 27, 2014]
Fixed incorrect handling of the iTXt compression flag in pngrutil.c
(bug report by Shunsaku Hirata). Bug was introduced in libpng-1.6.0.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit

View File

@ -4430,7 +4430,7 @@ Version 1.6.1beta05 [March 1, 2013]
Version 1.6.1beta06 [March 4, 2013]
Better documentation of unknown handling API interactions.
Corrected Android builds and corrected libpng.vers with symbol
prefixing This adds an API to set optimization options externally,
prefixing. This adds an API to set optimization options externally,
providing an alternative and general solution for the non-portable
run-time tests used by the ARM Neon code. It also makes those tests
compile and link on Android.
@ -5000,7 +5000,9 @@ Version 1.6.14beta03 [September 19, 2014]
already defined. Revert floating point exception handling in pngvalid.c
to version 1.6.14beta01 behavior.
Version 1.6.14beta04 [September 19, 2014]
Version 1.6.14beta04 [September 27, 2014]
Fixed incorrect handling of the iTXt compression flag in pngrutil.c
(bug report by Shunsaku Hirata). Bug was introduced in libpng-1.6.0.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit

View File

@ -2671,7 +2671,7 @@ png_handle_iTXt(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length)
buffer[uncompressed_length+prefix_length] = 0;
if (compressed != 0)
if (compressed == 0)
text.compression = PNG_ITXT_COMPRESSION_NONE;
else
@ -3330,7 +3330,7 @@ png_combine_row(png_const_structrp png_ptr, png_bytep dp, int display)
/* This can only be the RGB case, so each copy is exactly one
* pixel and it is not necessary to check for a partial copy.
*/
for(;;)
for (;;)
{
dp[0] = sp[0], dp[1] = sp[1], dp[2] = sp[2];