From 7dc03b1f91127a7c3e1a4715eccd935b53ff315b Mon Sep 17 00:00:00 2001 From: Glenn Randers-Pehrson Date: Sat, 14 Jul 2012 15:29:40 -0500 Subject: [PATCH] [libpng15 Do not compile PNG_DEPRECATED, PNG_ALLOC and PNG_PRIVATE when __GNUC__ < 3. --- ANNOUNCE | 31 +++++++++++++++---------------- CHANGES | 3 +++ libpng-manual.txt | 8 ++++---- libpng.3 | 19 ++++++++++--------- pngconf.h | 32 +++++++++++++++++--------------- 5 files changed, 49 insertions(+), 44 deletions(-) diff --git a/ANNOUNCE b/ANNOUNCE index 17fc962d4..27ca40c72 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,38 +1,37 @@ -Libpng 1.5.12 - July 11, 2012 +Libpng 1.5.13beta01 - July 14, 2012 -This is a public release of libpng, intended for use in production codes. +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. Files available for download: Source files with LF line endings (for Unix/Linux) and with a "configure" script - libpng-1.5.12.tar.xz (LZMA-compressed, recommended) - libpng-1.5.12.tar.gz - libpng-1.5.12.tar.bz2 + 1.5.13beta01.tar.xz (LZMA-compressed, recommended) + 1.5.13beta01.tar.gz + 1.5.13beta01.tar.bz2 Source files with CRLF line endings (for Windows), without the "configure" script - lpng1512.7z (LZMA-compressed, recommended) - lpng1512.zip + lp1513b01.7z (LZMA-compressed, recommended) + lp1513b01.zip Other information: - libpng-1.5.12-README.txt - libpng-1.5.12-LICENSE.txt + 1.5.13beta01-README.txt + 1.5.13beta01-LICENSE.txt -Changes since the last public release (1.5.11): +Changes since the last public release (1.5.12): - Removed scripts/makefile.cegcc from the *.zip and *.7z distributions; it - depends on configure, which is not included in those archives. - Changed "a+w" to "u+w" in Makefile.in to fix CVE-2012-3386. +Version 1.5.13beta01 [July 14, 2012] + Do not compile PNG_DEPRECATED, PNG_ALLOC and PNG_PRIVATE when __GNUC__ < 3. -Send comments/corrections/commendations to png-mng-implement at lists.sf.net +Send comments/corrections/commendations to png-mng-implement at lists.sf.net: (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement -to subscribe) -or to glennrp at users.sourceforge.net +to subscribe) or to glennrp at users.sourceforge.net Glenn R-P diff --git a/CHANGES b/CHANGES index 83f8f0846..73e2ffd6a 100644 --- a/CHANGES +++ b/CHANGES @@ -3896,6 +3896,9 @@ Version 1.5.12 [July 11, 2012] depends on configure, which is not included in those archives. Changed "a+w" to "u+w" in Makefile.in to fix CVE-2012-3386. +Version 1.5.13beta01 [July 14, 2012] + Do not compile PNG_DEPRECATED, PNG_ALLOC and PNG_PRIVATE when __GNUC__ < 3. + Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement diff --git a/libpng-manual.txt b/libpng-manual.txt index 1f960125e..5defa0094 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.5.12 - July 11, 2012 + libpng version 1.5.13beta01 - July 14, 2012 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2011 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.5.12 - July 11, 2012 + libpng versions 0.97, January 1998, through 1.5.13beta01 - July 14, 2012 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2011 Glenn Randers-Pehrson @@ -4602,13 +4602,13 @@ Other rules can be inferred by inspecting the libpng source. XIV. Y2K Compliance in libpng -July 11, 2012 +July 14, 2012 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and -upward through 1.5.12 are Y2K compliant. It is my belief that earlier +upward through 1.5.13beta01 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has two year fields. One is a 2-byte unsigned integer that diff --git a/libpng.3 b/libpng.3 index 91afdbef9..0df7523c8 100644 --- a/libpng.3 +++ b/libpng.3 @@ -1,6 +1,6 @@ -.TH LIBPNG 3 "July 11, 2012" +.TH LIBPNG 3 "July 14, 2012" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.5.12 +libpng \- Portable Network Graphics (PNG) Reference Library 1.5.13beta01 .SH SYNOPSIS \fI\fB @@ -981,7 +981,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.5.12 - July 11, 2012 + libpng version 1.5.13beta01 - July 14, 2012 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2011 Glenn Randers-Pehrson @@ -992,7 +992,7 @@ Libpng-manual.txt - A description on how to use and modify libpng Based on: - libpng versions 0.97, January 1998, through 1.5.12 - July 11, 2012 + libpng versions 0.97, January 1998, through 1.5.13beta01 - July 14, 2012 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2011 Glenn Randers-Pehrson @@ -5584,13 +5584,13 @@ Other rules can be inferred by inspecting the libpng source. .SH XIV. Y2K Compliance in libpng -July 11, 2012 +July 14, 2012 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and -upward through 1.5.12 are Y2K compliant. It is my belief that earlier +upward through 1.5.13beta01 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has two year fields. One is a 2-byte unsigned integer that @@ -5807,6 +5807,7 @@ the first widely used release: 1.5.11rc01-05 15 10511 15.so.15.11[.0] 1.5.11 15 10511 15.so.15.11[.0] 1.5.12 15 10512 15.so.15.12[.0] + 1.5.13beta01 15 10513 15.so.15.13[.0] Henceforth the source version will match the shared-library minor and patch numbers; the shared-library major version number will be @@ -5863,7 +5864,7 @@ possible without all of you. Thanks to Frank J. T. Wojcik for helping with the documentation. -Libpng version 1.5.12 - July 11, 2012: +Libpng version 1.5.13beta01 - July 14, 2012: Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net). @@ -5886,7 +5887,7 @@ this sentence. This code is released under the libpng license. -libpng versions 1.2.6, August 15, 2004, through 1.5.12, July 11, 2012, are +libpng versions 1.2.6, August 15, 2004, through 1.5.13beta01, July 14, 2012, are Copyright (c) 2004,2006-2007 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 @@ -5985,7 +5986,7 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson glennrp at users.sourceforge.net -July 11, 2012 +July 14, 2012 .\" end of man page diff --git a/pngconf.h b/pngconf.h index 5c3eb1454..dbc33cbfa 100644 --- a/pngconf.h +++ b/pngconf.h @@ -1,7 +1,7 @@ /* pngconf.h - machine configurable file for libpng * - * libpng version 1.5.12 - July 11, 2012 + * libpng version 1.5.13beta01 - July 14, 2012 * * Copyright (c) 1998-2012 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -344,21 +344,23 @@ # ifndef PNG_NORETURN # define PNG_NORETURN __attribute__((__noreturn__)) # endif -# ifndef PNG_ALLOCATED -# define PNG_ALLOCATED __attribute__((__malloc__)) -# endif -# ifndef PNG_DEPRECATED -# define PNG_DEPRECATED __attribute__((__deprecated__)) -# endif -# ifndef PNG_PRIVATE -# if 0 /* Doesn't work so we use deprecated instead*/ -# define PNG_PRIVATE \ - __attribute__((warning("This function is not exported by libpng."))) -# else -# define PNG_PRIVATE \ - __attribute__((__deprecated__)) +# if __GNUC__ >= 3 +# ifndef PNG_ALLOCATED +# define PNG_ALLOCATED __attribute__((__malloc__)) # endif -# endif +# ifndef PNG_DEPRECATED +# define PNG_DEPRECATED __attribute__((__deprecated__)) +# endif +# ifndef PNG_PRIVATE +# if 0 /* Doesn't work so we use deprecated instead*/ +# define PNG_PRIVATE \ + __attribute__((warning("This function is not exported by libpng."))) +# else +# define PNG_PRIVATE \ + __attribute__((__deprecated__)) +# endif +# endif +# endif /* __GNUC__ >= 3 */ # endif /* __GNUC__ */ # if defined(_MSC_VER) && (_MSC_VER >= 1300)