From f43b5e370998aeabea1d5b54a388ec4c1d6dcaac Mon Sep 17 00:00:00 2001 From: Glenn Randers-Pehrson Date: Sat, 20 Dec 2014 19:10:52 -0600 Subject: [PATCH] [libpng16] Imported from libpng-1.6.16beta03.tar --- ANNOUNCE | 4 ++-- CHANGES | 2 +- LICENSE | 4 ++-- README | 2 +- contrib/libtests/pngstest.c | 4 ++-- contrib/tools/pngfix.c | 4 ++-- libpng-manual.txt | 21 +++++++++------------ libpng.3 | 29 +++++++++++++---------------- libpngpf.3 | 2 +- png.5 | 2 +- png.c | 14 +++++++------- png.h | 10 +++++----- pngconf.h | 2 +- pngrutil.c | 8 ++++---- projects/vstudio/readme.txt | 2 +- projects/vstudio/zlib.props | 2 +- scripts/README.txt | 2 +- scripts/pnglibconf.h.prebuilt | 2 +- 18 files changed, 55 insertions(+), 61 deletions(-) diff --git a/ANNOUNCE b/ANNOUNCE index 16982e8e4..d5446335a 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,4 +1,4 @@ -Libpng 1.6.16beta03 - December 17, 2014 +Libpng 1.6.16beta03 - December 21, 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. @@ -35,7 +35,7 @@ Version 1.6.16beta02 [December 15, 2014] Revised Makefile.am and scripts/*.dfn again to work with MinGW/MSYS; renamed scripts/*.dfn to scripts/*.c (John Bowler). -Version 1.6.16beta03 [December 17, 2014] +Version 1.6.16beta03 [December 21, 2014] Quiet a "comparison always true" warning in pngstest.c (John Bowler). Send comments/corrections/commendations to png-mng-implement at lists.sf.net diff --git a/CHANGES b/CHANGES index 9d568fb06..d8c50599b 100644 --- a/CHANGES +++ b/CHANGES @@ -5109,7 +5109,7 @@ Version 1.6.16beta02 [December 15, 2014] Revised Makefile.am and scripts/*.dfn again to work with MinGW/MSYS; renamed scripts/*.dfn to scripts/*.c (John Bowler). -Version 1.6.16beta03 [December 17, 2014] +Version 1.6.16beta03 [December 21, 2014] Quiet a "comparison always true" warning in pngstest.c (John Bowler). Send comments/corrections/commendations to png-mng-implement at lists.sf.net diff --git a/LICENSE b/LICENSE index 851cab8c6..8417fad6e 100644 --- a/LICENSE +++ b/LICENSE @@ -10,7 +10,7 @@ this sentence. This code is released under the libpng license. -libpng versions 1.2.6, August 15, 2004, through 1.6.16beta03, December 15, 2014, are +libpng versions 1.2.6, August 15, 2004, through 1.6.16beta03, December 21, 2014, are Copyright (c) 2004, 2006-2014 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-1.2.5 with the following individual added to the list of Contributing Authors @@ -108,4 +108,4 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson glennrp at users.sourceforge.net -December 15, 2014 +December 21, 2014 diff --git a/README b/README index 3cf29186f..a8d22b4cf 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -README for libpng version 1.6.16beta03 - December 15, 2014 (shared library 16.0) +README for libpng version 1.6.16beta03 - December 21, 2014 (shared library 16.0) See the note about version numbers near the top of png.h See INSTALL for instructions on how to install libpng. diff --git a/contrib/libtests/pngstest.c b/contrib/libtests/pngstest.c index 6d6c501ef..c65406be9 100644 --- a/contrib/libtests/pngstest.c +++ b/contrib/libtests/pngstest.c @@ -1,9 +1,9 @@ /*- * pngstest.c * - * Copyright (c) 2013 John Cunningham Bowler + * Copyright (c) 2013-2014 John Cunningham Bowler * - * Last changed in libpng 1.6.8 [December 19, 2013] + * Last changed in libpng 1.6.16 [(PENDING RELEASE)] * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer diff --git a/contrib/tools/pngfix.c b/contrib/tools/pngfix.c index 92600bb86..65422f600 100644 --- a/contrib/tools/pngfix.c +++ b/contrib/tools/pngfix.c @@ -8,8 +8,8 @@ * For conditions of distribution and use, see the disclaimer * and license in png.h * - * Tool to check and fix the zlib inflate 'too far back' problem, see the usage - * message for more information. + * Tool to check and fix the zlib inflate 'too far back' problem. + * See the usage message for more information. */ #include #include diff --git a/libpng-manual.txt b/libpng-manual.txt index e70dc5eaf..171e70e97 100644 --- a/libpng-manual.txt +++ b/libpng-manual.txt @@ -1,6 +1,6 @@ libpng-manual.txt - A description on how to use and modify libpng - libpng version 1.6.16beta03 - December 15, 2014 + libpng version 1.6.16beta03 - December 21, 2014 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2014 Glenn Randers-Pehrson @@ -11,7 +11,7 @@ libpng-manual.txt - A description on how to use and modify libpng Based on: - libpng versions 0.97, January 1998, through 1.6.16beta03 - December 15, 2014 + libpng versions 0.97, January 1998, through 1.6.16beta03 - December 21, 2014 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2014 Glenn Randers-Pehrson @@ -648,15 +648,12 @@ User limits The PNG specification allows the width and height of an image to be as large as 2^31-1 (0x7fffffff), or about 2.147 billion rows and columns. -Since very few applications really need to process such large images, -we have imposed an arbitrary 1-million limit on rows and columns. Larger images will be rejected immediately with a png_error() call. If -you wish to change this limit, you can use +you wish to reduce these limits, you can use png_set_user_limits(png_ptr, width_max, height_max); -to set your own limits, or use width_max = height_max = 0x7fffffffL -to allow all valid dimensions (libpng may reject some very large images +to set your own limits (libpng may reject some very wide images anyway because of potential buffer overflow conditions). You should put this statement after you create the PNG structure and @@ -5037,8 +5034,8 @@ where "rp" indicates a "restricted pointer". Error detection in some chunks has improved; in particular the iCCP chunk reader now does pretty complete validation of the basic format. Some bad profiles that were previously accepted are now accepted with a warning or -rejected, depending upon the png_set_benign_errors() setting, in particular the -very old broken Microsoft/HP 3144-byte sRGB profile. Starting with +rejected, depending upon the png_set_benign_errors() setting, in particular +the very old broken Microsoft/HP 3144-byte sRGB profile. Starting with libpng-1.6.11, recognizing and checking sRGB profiles can be avoided by means of @@ -5048,8 +5045,8 @@ means of PNG_OPTION_ON); #endif -It's not a good idea to do this if you are using the "simplified API", -which needs to be able to recognize an sRGB profile conveyed via the iCCP +It's not a good idea to do this if you are using the new "simplified API", +which needs to be able to recognize sRGB profiles conveyed via the iCCP chunk. The PNG spec requirement that only grayscale profiles may appear in images @@ -5277,7 +5274,7 @@ Other rules can be inferred by inspecting the libpng source. XVI. Y2K Compliance in libpng -December 15, 2014 +December 21, 2014 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. diff --git a/libpng.3 b/libpng.3 index 303d30a19..d1d2c481b 100644 --- a/libpng.3 +++ b/libpng.3 @@ -1,4 +1,4 @@ -.TH LIBPNG 3 "December 15, 2014" +.TH LIBPNG 3 "December 21, 2014" .SH NAME libpng \- Portable Network Graphics (PNG) Reference Library 1.6.16beta03 .SH SYNOPSIS @@ -504,7 +504,7 @@ Following is a copy of the libpng-manual.txt file that accompanies libpng. .SH LIBPNG.TXT libpng-manual.txt - A description on how to use and modify libpng - libpng version 1.6.16beta03 - December 15, 2014 + libpng version 1.6.16beta03 - December 21, 2014 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2014 Glenn Randers-Pehrson @@ -515,7 +515,7 @@ libpng-manual.txt - A description on how to use and modify libpng Based on: - libpng versions 0.97, January 1998, through 1.6.16beta03 - December 15, 2014 + libpng versions 0.97, January 1998, through 1.6.16beta03 - December 21, 2014 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2014 Glenn Randers-Pehrson @@ -1152,15 +1152,12 @@ callback function: The PNG specification allows the width and height of an image to be as large as 2^(31\-1 (0x7fffffff), or about 2.147 billion rows and columns. -Since very few applications really need to process such large images, -we have imposed an arbitrary 1-million limit on rows and columns. Larger images will be rejected immediately with a png_error() call. If -you wish to change this limit, you can use +you wish to reduce these limits, you can use png_set_user_limits(png_ptr, width_max, height_max); -to set your own limits, or use width_max = height_max = 0x7fffffffL -to allow all valid dimensions (libpng may reject some very large images +to set your own limits (libpng may reject some very wide images anyway because of potential buffer overflow conditions). You should put this statement after you create the PNG structure and @@ -5541,8 +5538,8 @@ where "rp" indicates a "restricted pointer". Error detection in some chunks has improved; in particular the iCCP chunk reader now does pretty complete validation of the basic format. Some bad profiles that were previously accepted are now accepted with a warning or -rejected, depending upon the png_set_benign_errors() setting, in particular the -very old broken Microsoft/HP 3144-byte sRGB profile. Starting with +rejected, depending upon the png_set_benign_errors() setting, in particular +the very old broken Microsoft/HP 3144-byte sRGB profile. Starting with libpng-1.6.11, recognizing and checking sRGB profiles can be avoided by means of @@ -5552,8 +5549,8 @@ means of PNG_OPTION_ON); #endif -It's not a good idea to do this if you are using the "simplified API", -which needs to be able to recognize an sRGB profile conveyed via the iCCP +It's not a good idea to do this if you are using the new "simplified API", +which needs to be able to recognize sRGB profiles conveyed via the iCCP chunk. The PNG spec requirement that only grayscale profiles may appear in images @@ -5781,7 +5778,7 @@ Other rules can be inferred by inspecting the libpng source. .SH XVI. Y2K Compliance in libpng -December 15, 2014 +December 21, 2014 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. @@ -6093,7 +6090,7 @@ possible without all of you. Thanks to Frank J. T. Wojcik for helping with the documentation. -Libpng version 1.6.16beta03 - December 15, 2014: +Libpng version 1.6.16beta03 - December 21, 2014: Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net). @@ -6116,7 +6113,7 @@ this sentence. This code is released under the libpng license. -libpng versions 1.2.6, August 15, 2004, through 1.6.16beta03, December 15, 2014, are +libpng versions 1.2.6, August 15, 2004, through 1.6.16beta03, December 21, 2014, are Copyright (c) 2004,2006-2014 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-1.2.5 with the following individual added to the list of Contributing Authors @@ -6215,7 +6212,7 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson glennrp at users.sourceforge.net -December 15, 2014 +December 21, 2014 .\" end of man page diff --git a/libpngpf.3 b/libpngpf.3 index bce9293fc..3ccb55889 100644 --- a/libpngpf.3 +++ b/libpngpf.3 @@ -1,4 +1,4 @@ -.TH LIBPNGPF 3 "December 15, 2014" +.TH LIBPNGPF 3 "December 21, 2014" .SH NAME libpng \- Portable Network Graphics (PNG) Reference Library 1.6.16beta03 (private functions) diff --git a/png.5 b/png.5 index 5299a658d..2da6ba10d 100644 --- a/png.5 +++ b/png.5 @@ -1,4 +1,4 @@ -.TH PNG 5 "December 15, 2014" +.TH PNG 5 "December 21, 2014" .SH NAME png \- Portable Network Graphics (PNG) format .SH DESCRIPTION diff --git a/png.c b/png.c index 13c858e28..5c4e59c99 100644 --- a/png.c +++ b/png.c @@ -1,7 +1,7 @@ /* png.c - location for general purpose libpng functions * - * Last changed in libpng 1.6.15 [November 20, 2014] + * Last changed in libpng 1.6.16 [(PENDING RELEASE)] * Copyright (c) 1998-2014 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -769,13 +769,13 @@ png_get_copyright(png_const_structrp png_ptr) #else # ifdef __STDC__ return PNG_STRING_NEWLINE \ - "libpng version 1.6.16beta03 - December 15, 2014" PNG_STRING_NEWLINE \ + "libpng version 1.6.16beta03 - December 21, 2014" PNG_STRING_NEWLINE \ "Copyright (c) 1998-2014 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.6.16beta03 - December 15, 2014\ + return "libpng version 1.6.16beta03 - December 21, 2014\ Copyright (c) 1998-2014 Glenn Randers-Pehrson\ Copyright (c) 1996-1997 Andreas Dilger\ Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc."; @@ -1075,7 +1075,7 @@ png_colorspace_set_gamma(png_const_structrp png_ptr, png_colorspacerp colorspace, png_fixed_point gAMA) { /* Changed in libpng-1.5.4 to limit the values to ensure overflow can't - * occur. Since the fixed point representation is assymetrical it is + * occur. Since the fixed point representation is asymetrical it is * possible for 1/gamma to overflow the limit of 21474 and this means the * gamma value must be at least 5/100000 and hence at most 20000.0. For * safety the limits here are a little narrower. The values are 0.00016 to @@ -1324,7 +1324,7 @@ png_XYZ_from_xy(png_XYZ *XYZ, const png_xy *xy) * (1/white-y), so we can immediately see that as white-y approaches 0 the * accuracy inherent in the cHRM chunk drops off substantially. * - * libpng arithmetic: a simple invertion of the above equations + * libpng arithmetic: a simple inversion of the above equations * ------------------------------------------------------------ * * white_scale = 1/white-y @@ -1817,7 +1817,7 @@ png_icc_profile_error(png_const_structrp png_ptr, png_colorspacerp colorspace, PNG_UNUSED(pos) /* This is recoverable, but make it unconditionally an app_error on write to - * avoid writing invalid ICC profiles into PNG files. (I.e. we handle them + * avoid writing invalid ICC profiles into PNG files (i.e., we handle them * on read, with a warning, but on write unless the app turns off * application errors the PNG won't be written.) */ @@ -1836,7 +1836,7 @@ png_colorspace_set_sRGB(png_const_structrp png_ptr, png_colorspacerp colorspace, /* sRGB sets known gamma, end points and (from the chunk) intent. */ /* IMPORTANT: these are not necessarily the values found in an ICC profile * because ICC profiles store values adapted to a D50 environment; it is - * expected that the ICC profile mediaWhitePointTag will be D50, see the + * expected that the ICC profile mediaWhitePointTag will be D50; see the * checks and code elsewhere to understand this better. * * These XYZ values, which are accurate to 5dp, produce rgb to gray diff --git a/png.h b/png.h index e7d52f9a8..ce9b7c53e 100644 --- a/png.h +++ b/png.h @@ -1,7 +1,7 @@ /* png.h - header file for PNG reference library * - * libpng version 1.6.16beta03, December 15, 2014 + * libpng version 1.6.16beta03, December 21, 2014 * Copyright (c) 1998-2014 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -11,7 +11,7 @@ * Authors and maintainers: * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat * libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger - * libpng versions 0.97, January 1998, through 1.6.16beta03, December 15, 2014: Glenn + * libpng versions 0.97, January 1998, through 1.6.16beta03, December 21, 2014: Glenn * See also "Contributing Authors", below. * * Note about libpng version numbers: @@ -241,7 +241,7 @@ * * This code is released under the libpng license. * - * libpng versions 1.2.6, August 15, 2004, through 1.6.16beta03, December 15, 2014, are + * libpng versions 1.2.6, August 15, 2004, through 1.6.16beta03, December 21, 2014, are * Copyright (c) 2004, 2006-2014 Glenn Randers-Pehrson, and are * distributed according to the same disclaimer and license as libpng-1.2.5 * with the following individual added to the list of Contributing Authors: @@ -353,7 +353,7 @@ * Y2K compliance in libpng: * ========================= * - * December 15, 2014 + * December 21, 2014 * * Since the PNG Development group is an ad-hoc body, we can't make * an official declaration. @@ -423,7 +423,7 @@ /* Version information for png.h - this should match the version in png.c */ #define PNG_LIBPNG_VER_STRING "1.6.16beta03" #define PNG_HEADER_VERSION_STRING \ - " libpng version 1.6.16beta03 - December 15, 2014\n" + " libpng version 1.6.16beta03 - December 21, 2014\n" #define PNG_LIBPNG_VER_SONUM 16 #define PNG_LIBPNG_VER_DLLNUM 16 diff --git a/pngconf.h b/pngconf.h index 35f49238e..e1940592b 100644 --- a/pngconf.h +++ b/pngconf.h @@ -1,7 +1,7 @@ /* pngconf.h - machine configurable file for libpng * - * libpng version 1.6.16beta03,December 15, 2014 + * libpng version 1.6.16beta03,December 21, 2014 * * Copyright (c) 1998-2014 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngrutil.c b/pngrutil.c index b0385fc78..4e6202438 100644 --- a/pngrutil.c +++ b/pngrutil.c @@ -1,7 +1,7 @@ /* pngrutil.c - utilities to read a PNG file * - * Last changed in libpng 1.6.15 [November 20, 2014] + * Last changed in libpng 1.6.16 [(PENDING RELEASE)] * Copyright (c) 1998-2014 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -788,6 +788,7 @@ png_inflate_read(png_structrp png_ptr, png_bytep read_buffer, uInt read_size, #endif /* Read and check the IDHR chunk */ + void /* PRIVATE */ png_handle_IHDR(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) { @@ -852,8 +853,7 @@ png_handle_IHDR(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length) } /* Set up other useful info */ - png_ptr->pixel_depth = (png_byte)(png_ptr->bit_depth * - png_ptr->channels); + png_ptr->pixel_depth = (png_byte)(png_ptr->bit_depth * png_ptr->channels); png_ptr->rowbytes = PNG_ROWBYTES(png_ptr->pixel_depth, png_ptr->width); png_debug1(3, "bit_depth = %d", png_ptr->bit_depth); png_debug1(3, "channels = %d", png_ptr->channels); @@ -4228,7 +4228,7 @@ png_read_start_row(png_structrp png_ptr) max_pixel_depth = png_ptr->pixel_depth; - /* WARNING: * png_read_transform_info (pngrtran.c) performs a simpliar set of + /* WARNING: * png_read_transform_info (pngrtran.c) performs a simpler set of * calculations to calculate the final pixel depth, then * png_do_read_transforms actually does the transforms. This means that the * code which effectively calculates this value is actually repeated in three diff --git a/projects/vstudio/readme.txt b/projects/vstudio/readme.txt index e6648c0ed..1b8eae236 100644 --- a/projects/vstudio/readme.txt +++ b/projects/vstudio/readme.txt @@ -1,7 +1,7 @@ VisualStudio instructions -libpng version 1.6.16beta03 - December 15, 2014 +libpng version 1.6.16beta03 - December 21, 2014 Copyright (c) 1998-2010 Glenn Randers-Pehrson diff --git a/projects/vstudio/zlib.props b/projects/vstudio/zlib.props index 4f6653a61..1ebb89363 100644 --- a/projects/vstudio/zlib.props +++ b/projects/vstudio/zlib.props @@ -2,7 +2,7 @@