diff --git a/ANNOUNCE b/ANNOUNCE index 6f029b896..06cfc8678 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,5 +1,5 @@ -Libpng 1.5.5beta07 - September 1, 2011 +Libpng 1.5.5beta07 - September 8, 2011 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. @@ -71,17 +71,21 @@ Version 1.5.5beta06 [August 26, 2011] and true grey ones were not gamma corrected (the original value of the red component was used instead). APIs to get and set cHRM using color space end points have been added and the rgb_to_gray code that defaults - based on cHRM (introduced in 1.5.4) has been corrected. A considerable - number of tests has been added to pngvalid for the rgb_to_gray transform. - Arithmetic errors in rgb_to_gray whereby the calculated gray value was + based on cHRM, and the divide-by-zero bug in png_handle_cHRM (introduced + in 1.5.4) have been corrected. + A considerable number of tests has been added to pngvalid for the + rgb_to_gray transform. + Arithmetic errors in rgb_to_gray whereby the calculated gray value was truncated to the bit depth rather than rounded have been fixed except in the 8-bit non-gamma-corrected case (where consistency seems more important than correctness.) The code still has considerable inaccuracies in the 8-bit case because 8-bit linear arithmetic is used. -Version 1.5.5beta07 [September 1, 2011] - Added "$(ARCH)" option to makefile.darwin - Added SunOS support to configure.ac and Makefile.am +Version 1.5.5beta07 [September 8, 2011] + Added "$(ARCH)" option to makefile.darwin + Added SunOS support to configure.ac and Makefile.am + Changed png_chunk_benign_error() to png_warning() in png.c, in + png_XYZ_from_xy_checked Send comments/corrections/commendations to png-mng-implement at lists.sf.net: (subscription required; visit diff --git a/CHANGES b/CHANGES index 6d27fb4f0..be2f7f62c 100644 --- a/CHANGES +++ b/CHANGES @@ -3377,7 +3377,8 @@ Version 1.5.3beta08 [May 16, 2011] Documented png_set_alpha_mode(), other changes in libpng.3/libpng-manual.txt The cHRM chunk now sets the defaults for png_set_rgb_to_gray() (when negative parameters are supplied by the caller), while in the absence of cHRM - sRGB/Rec 709 values are still used. + sRGB/Rec 709 values are still used. This introduced a divide-by-zero + bug in png_handle_cHRM(). The bKGD chunk no longer overwrites the background value set by png_set_background(), allowing the latter to be used before the file header is read. It never performed any useful function to override @@ -3554,17 +3555,21 @@ Version 1.5.5beta06 [August 26, 2011] and true grey ones were not gamma corrected (the original value of the red component was used instead). APIs to get and set cHRM using color space end points have been added and the rgb_to_gray code that defaults - based on cHRM (introduced in 1.5.4) has been corrected. A considerable - number of tests has been added to pngvalid for the rgb_to_gray transform. - Arithmetic errors in rgb_to_gray whereby the calculated gray value was + based on cHRM, and the divide-by-zero bug in png_handle_cHRM (introduced + in 1.5.4) have been corrected. + A considerable number of tests has been added to pngvalid for the + rgb_to_gray transform. + Arithmetic errors in rgb_to_gray whereby the calculated gray value was truncated to the bit depth rather than rounded have been fixed except in the 8-bit non-gamma-corrected case (where consistency seems more important than correctness.) The code still has considerable inaccuracies in the 8-bit case because 8-bit linear arithmetic is used. -Version 1.5.5beta07 [September 1, 2011] - Added "$(ARCH)" option to makefile.darwin - Added SunOS support to configure.ac and Makefile.am +Version 1.5.5beta07 [September 8, 2011] + Added "$(ARCH)" option to makefile.darwin + Added SunOS support to configure.ac and Makefile.am + Changed png_chunk_benign_error() to png_warning() in png.c, in + png_XYZ_from_xy_checked Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/png.c b/png.c index 6c08c5c31..4e627d601 100644 --- a/png.c +++ b/png.c @@ -617,13 +617,13 @@ png_get_copyright(png_const_structp png_ptr) #else # ifdef __STDC__ return PNG_STRING_NEWLINE \ - "libpng version 1.5.5beta07 - August 26, 2011" PNG_STRING_NEWLINE \ + "libpng version 1.5.5beta07 - September 8, 2011" PNG_STRING_NEWLINE \ "Copyright (c) 1998-2011 Glenn Randers-Pehrson" PNG_STRING_NEWLINE \ "Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \ "Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc." \ PNG_STRING_NEWLINE; # else - return "libpng version 1.5.5beta07 - August 26, 2011\ + return "libpng version 1.5.5beta07 - September 8, 2011\ Copyright (c) 1998-2011 Glenn Randers-Pehrson\ Copyright (c) 1996-1997 Andreas Dilger\ Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc."; @@ -1092,7 +1092,7 @@ int png_XYZ_from_xy_checked(png_structp png_ptr, png_XYZ *XYZ, png_xy xy) * overflow while trying to get XYZ values out of it. This is * entirely benign - the cHRM chunk is pretty extreme. */ - png_chunk_benign_error(png_ptr, + png_warning(png_ptr, "extreme cHRM chunk cannot be converted to tristimulus values"); break;