diff options
57 files changed, 358 insertions, 278 deletions
@@ -1,5 +1,5 @@ -Libpng 1.0.53 - February 25, 2010 +Libpng 1.0.54 - July 2, 2010 This is a public release of libpng, intended for use in production codes. @@ -8,55 +8,44 @@ Files available for download: Source files with LF line endings (for Unix/Linux) and with a "configure" script - libpng-1.0.53.tar.xz (LZMA-compressed, recommended) - libpng-1.0.53.tar.gz - libpng-1.0.53.tar.bz2 + libpng-1.0.54.tar.xz (LZMA-compressed, recommended) + libpng-1.0.54.tar.gz + libpng-1.0.54.tar.bz2 Source files with LF line endings (for Unix/Linux) without the "configure" script - libpng-1.0.53-no-config.tar.xz (LZMA-compressed, recommended) - libpng-1.0.53-no-config.tar.gz - libpng-1.0.53-no-config.tar.bz2 + libpng-1.0.54-no-config.tar.xz (LZMA-compressed, recommended) + libpng-1.0.54-no-config.tar.gz + libpng-1.0.54-no-config.tar.bz2 Source files with CRLF line endings (for Windows), without the "configure" script - lpng1053.zip - lpng1053.7z - lpng1053.tar.bz2 + lpng1054.zip + lpng1054.7z + lpng1054.tar.bz2 Project files - libpng-1.0.53-project-netware.zip - libpng-1.0.53-project-wince.zip + libpng-1.0.54-project-netware.zip + libpng-1.0.54-project-wince.zip Other information: - libpng-1.0.53-README.txt - libpng-1.0.53-KNOWNBUGS.txt - libpng-1.0.53-LICENSE.txt - libpng-1.0.53-Y2K-compliance.txt - -Changes since the last public release (1.0.52): - -version 1.0.53 [February 25, 2010] - - Updated CMakeLists.txt for consistent indentation and to avoid an - unclosed if-statement warning (Philip Lowman). - Removed "#ifdef PNG_1_0_X / #endif" surrounding - PNG_READ_16_TO_8_SUPPORTED and PNG_READ_GRAY_TO_RGB_SUPPORTED - in pngconf.h. These were added in libpng-1.2.41beta08 and libpng-1.0.51, - which introduced a binary incompatibility with libpng-1.0.50. - Backported two-pass png_decompress_chunk() algorithm from libpng-1.4.1 - Removed PNGAPI declaration of png_calloc() and png_write_sig() in - 1ibpng-1.2.X, introduced by mistake in libpng-1.2.41. - Return allocated "old_buffer" in png_push_save_buffer() before png_error(), - to avoid a potential memory leak. - Ported rewritten png_decompress_chunk() by John Bowler from libpng-1.4.1. - Define _ALL_SOURCE in configure.ac, makefile.aix, and CMakeLists.txt - when using AIX compiler. - Removed unused gzio.c from contrib/pngminim gather and makefile scripts + libpng-1.0.54-README.txt + libpng-1.0.54-KNOWNBUGS.txt + libpng-1.0.54-LICENSE.txt + libpng-1.0.54-Y2K-compliance.txt + +Changes since the last public release (1.0.53): + +version 1.0.54 [July 2, 2010] + + Rewrote png_process_IDAT_data to consistently treat extra data as warnings + and handle end conditions more cleanly. + Removed the now-redundant check for out-of-bounds new_row from example.c + Send comments/corrections/commendations to png-mng-implement at lists.sf.net @@ -2668,6 +2668,31 @@ version 1.0.53rc02 and 1.2.43rc02 [February 19, 2010] version 1.0.53 and 1.2.43 [February 25, 2010] Removed unused gzio.c from contrib/pngminim gather and makefile scripts +version 1.2.44beta01 [June 18, 2010] + In pngpread.c: png_push_have_row() add check for new_row > height + Removed the now-redundant check for out-of-bounds new_row from example.c + +version 1.2.44beta02 [June 19, 2010] + In pngpread.c: png_push_process_row() add check for too many rows. + Removed the now-redundant check for new_row > height in png_push_have_row(). + +version 1.2.44beta03 [June 20, 2010] + Rewrote png_process_IDAT_data() to consistently treat extra data as warnings + and handle end conditions more cleanly. + Removed the new (beta02) check in png_push_process_row(). + +version 1.2.44rc01 [June 21, 2010] + Revised some comments in png_process_IDAT_data(). + +version 1.2.44rc02 [June 22, 2010] + Stop memory leak when reading a malformed sCAL chunk. + +version 1.2.44rc03 [June 23, 2010] + Revised pngpread.c patch of beta05 to avoid an endless loop. + +version 1.2.44 [June 26, 2010] + Updated some of the "last changed" dates. + Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement @@ -1,5 +1,5 @@ -Installing libpng version 1.0.53 - February 25, 2010 +Installing libpng version 1.0.54 - July 2, 2010 On Unix/Linux and similar systems, you can simply type @@ -46,7 +46,7 @@ to have access to the zlib.h and zconf.h include files that correspond to the version of zlib that's installed. You can rename the directories that you downloaded (they -might be called "libpng-1.0.53" or "libpng10" and "zlib-1.2.3" +might be called "libpng-1.0.54" or "libpng10" and "zlib-1.2.3" or "zlib123") so that you have directories called "zlib" and "libpng". Your directory structure should look like this: @@ -1,5 +1,5 @@ -Known bugs in libpng version 1.0.53 +Known bugs in libpng version 1.0.54 1. December 4, 2009: The PNG_NO_ERROR_NUMBERS macro was inadvertently defined in libpng-1.2.41/pngconf.h, which may cause a problem with @@ -10,7 +10,7 @@ this sentence. This code is released under the libpng license. -libpng versions 1.2.6, August 15, 2004, through 1.0.53, February 25, 2010, are +libpng versions 1.2.6, August 15, 2004, through 1.0.54, July 2, 2010, are Copyright (c) 2004, 2006-2009 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 -February 25, 2010 +July 2, 2010 diff --git a/Makefile.am b/Makefile.am index 5e3984b4c..e135d46d4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -86,7 +86,7 @@ EXTRA_DIST= \ ${srcdir}/contrib/pngsuite/* \ ${srcdir}/contrib/visupng/* \ $(TESTS) \ - example.c libpng-1.0.53.txt pngvcrd.c + example.c libpng-1.0.54.txt pngvcrd.c CLEANFILES= pngout.png libpng10.pc libpng10-config libpng.vers \ libpng.sym diff --git a/Makefile.in b/Makefile.in index 8f5869ae6..df3421fd7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -351,7 +351,7 @@ EXTRA_DIST = \ ${srcdir}/contrib/pngsuite/* \ ${srcdir}/contrib/visupng/* \ $(TESTS) \ - example.c libpng-1.0.53.txt pngvcrd.c + example.c libpng-1.0.54.txt pngvcrd.c CLEANFILES = pngout.png libpng10.pc libpng10-config libpng.vers \ libpng.sym @@ -1,4 +1,4 @@ -README for libpng version 1.0.53 - February 25, 2010 (shared library 10.0) +README for libpng version 1.0.54 - July 2, 2010 (shared library 10.0) See the note about version numbers near the top of png.h See INSTALL for instructions on how to install libpng. @@ -199,11 +199,11 @@ Files in this distribution: makefile.std => Generic UNIX makefile (cc, creates static libpng.a) makefile.elf => Linux/ELF gcc makefile symbol versioning, - creates libpng10.so.0.1.0.53) + creates libpng10.so.0.1.0.54) makefile.linux => Linux/ELF makefile (gcc, creates - libpng10.so.0.1.0.53) + libpng10.so.0.1.0.54) makefile.gcmmx => Linux/ELF makefile (gcc, creates - libpng10.so.0.1.0.53, previously + libpng10.so.0.1.0.54, previously used assembler code tuned for Intel MMX platform) makefile.gcc => Generic makefile (gcc, creates static @@ -228,12 +228,12 @@ Files in this distribution: makefile.openbsd => OpenBSD makefile makefile.sgi => Silicon Graphics IRIX (cc, creates static lib) makefile.sggcc => Silicon Graphics - (gcc, creates libpng10.so.0.1.0.53) + (gcc, creates libpng10.so.0.1.0.54) makefile.sunos => Sun makefile makefile.solaris => Solaris 2.X makefile - (gcc, creates libpng10.so.0.1.0.53) + (gcc, creates libpng10.so.0.1.0.54) makefile.so9 => Solaris 9 makefile - (gcc, creates libpng10.so.0.1.0.53) + (gcc, creates libpng10.so.0.1.0.54) makefile.32sunu => Sun Ultra 32-bit makefile makefile.64sunu => Sun Ultra 64-bit makefile makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc @@ -1,13 +1,13 @@ Y2K compliance in libpng: ========================= - February 25, 2010 + July 2, 2010 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.0.53 are Y2K compliant. It is my belief that earlier + upward through 1.0.54 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has three year fields. One is a 2-byte unsigned integer @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.65 for libpng 1.0.53. +# Generated by GNU Autoconf 2.65 for libpng 1.0.54. # # Report bugs to <png-mng-implement@lists.sourceforge.net>. # @@ -701,8 +701,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='libpng' PACKAGE_TARNAME='libpng' -PACKAGE_VERSION='1.0.53' -PACKAGE_STRING='libpng 1.0.53' +PACKAGE_VERSION='1.0.54' +PACKAGE_STRING='libpng 1.0.54' PACKAGE_BUGREPORT='png-mng-implement@lists.sourceforge.net' PACKAGE_URL='' @@ -1435,7 +1435,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libpng 1.0.53 to adapt to many kinds of systems. +\`configure' configures libpng 1.0.54 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1505,7 +1505,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libpng 1.0.53:";; + short | recursive ) echo "Configuration of libpng 1.0.54:";; esac cat <<\_ACEOF @@ -1612,7 +1612,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libpng configure 1.0.53 +libpng configure 1.0.54 generated by GNU Autoconf 2.65 Copyright (C) 2009 Free Software Foundation, Inc. @@ -2037,7 +2037,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libpng $as_me 1.0.53, which was +It was created by libpng $as_me 1.0.54, which was generated by GNU Autoconf 2.65. Invocation command line was $ $0 $@ @@ -2845,7 +2845,7 @@ fi # Define the identity of the package. PACKAGE='libpng' - VERSION='1.0.53' + VERSION='1.0.54' cat >>confdefs.h <<_ACEOF @@ -2909,10 +2909,10 @@ fi -PNGLIB_VERSION=1.0.53 +PNGLIB_VERSION=1.0.54 PNGLIB_MAJOR=1 PNGLIB_MINOR=0 -PNGLIB_RELEASE=53 +PNGLIB_RELEASE=54 @@ -12079,7 +12079,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libpng $as_me 1.0.53, which was +This file was extended by libpng $as_me 1.0.54, which was generated by GNU Autoconf 2.65. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -12145,7 +12145,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libpng config.status 1.0.53 +libpng config.status 1.0.54 configured by $0, generated by GNU Autoconf 2.65, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 735021bf2..8d6b865ef 100644 --- a/configure.ac +++ b/configure.ac @@ -18,15 +18,15 @@ AC_PREREQ(2.59) dnl Version number stuff here: -AC_INIT([libpng], [1.0.53], [png-mng-implement@lists.sourceforge.net]) +AC_INIT([libpng], [1.0.54], [png-mng-implement@lists.sourceforge.net]) AM_INIT_AUTOMAKE dnl stop configure from automagically running automake AM_MAINTAINER_MODE -PNGLIB_VERSION=1.0.53 +PNGLIB_VERSION=1.0.54 PNGLIB_MAJOR=1 PNGLIB_MINOR=0 -PNGLIB_RELEASE=53 +PNGLIB_RELEASE=54 dnl End of version number stuff @@ -509,20 +509,17 @@ row_callback(png_structp png_ptr, png_bytep new_row, * shown below: */ - /* Check if row_num is in bounds. */ - if ((row_num >= 0) && (row_num < height)) - { - /* Get pointer to corresponding row in our - * PNG read buffer. - */ - png_bytep old_row = ((png_bytep *)our_data)[row_num]; - - /* If both rows are allocated then copy the new row - * data to the corresponding row data. - */ - if ((old_row != NULL) && (new_row != NULL)) - png_progressive_combine_row(png_ptr, old_row, new_row); - } + /* Get pointer to corresponding row in our + * PNG read buffer. + */ + png_bytep old_row = ((png_bytep *)our_data)[row_num]; + + /* If both rows are allocated then copy the new row + * data to the corresponding row data. + */ + if ((old_row != NULL) && (new_row != NULL)) + png_progressive_combine_row(png_ptr, old_row, new_row); + /* * The rows and passes are called in order, so you don't really * need the row_num and pass, but I'm supplying them because it diff --git a/libpng-1.0.53.txt b/libpng-1.0.54.txt index 96b662a37..ab1a8343a 100644 --- a/libpng-1.0.53.txt +++ b/libpng-1.0.54.txt @@ -1,6 +1,6 @@ libpng.txt - A description on how to use and modify libpng - libpng version 1.0.53 - February 25, 2010 + libpng version 1.0.54 - July 2, 2010 Updated and distributed by Glenn Randers-Pehrson <glennrp at users.sourceforge.net> Copyright (c) 1998-2009 Glenn Randers-Pehrson @@ -11,7 +11,7 @@ libpng.txt - A description on how to use and modify libpng Based on: - libpng versions 0.97, January 1998, through 1.0.53 - February 25, 2010 + libpng versions 0.97, January 1998, through 1.0.54 - July 2, 2010 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2009 Glenn Randers-Pehrson @@ -878,7 +878,7 @@ things. As of libpng version 1.2.9, png_set_expand_gray_1_2_4_to_8() was added. It expands the sample depth without changing tRNS to alpha. -As of libpng version 1.0.53, not all possible expansions are supported. +As of libpng version 1.0.54, not all possible expansions are supported. In the following table, the 01 means grayscale with depth<8, 31 means indexed with depth<8, other numerals represent the color type, "T" means @@ -3076,13 +3076,13 @@ Other rules can be inferred by inspecting the libpng source. XIII. Y2K Compliance in libpng -February 25, 2010 +July 2, 2010 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.0.53 are Y2K compliant. It is my belief that earlier +upward through 1.0.54 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has three year fields. One is a 2-byte unsigned integer that @@ -1,6 +1,6 @@ -.TH LIBPNG 3 "February 25, 2010" +.TH LIBPNG 3 "July 2, 2010" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.0.53 +libpng \- Portable Network Graphics (PNG) Reference Library 1.0.54 .SH SYNOPSIS \fI\fB @@ -821,7 +821,7 @@ Following is a copy of the libpng.txt file that accompanies libpng. .SH LIBPNG.TXT libpng.txt - A description on how to use and modify libpng - libpng version 1.0.53 - February 25, 2010 + libpng version 1.0.54 - July 2, 2010 Updated and distributed by Glenn Randers-Pehrson <glennrp at users.sourceforge.net> Copyright (c) 1998-2009 Glenn Randers-Pehrson @@ -832,7 +832,7 @@ libpng.txt - A description on how to use and modify libpng Based on: - libpng versions 0.97, January 1998, through 1.0.53 - February 25, 2010 + libpng versions 0.97, January 1998, through 1.0.54 - July 2, 2010 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2009 Glenn Randers-Pehrson @@ -1699,7 +1699,7 @@ things. As of libpng version 1.2.9, png_set_expand_gray_1_2_4_to_8() was added. It expands the sample depth without changing tRNS to alpha. -As of libpng version 1.0.53, not all possible expansions are supported. +As of libpng version 1.0.54, not all possible expansions are supported. In the following table, the 01 means grayscale with depth<8, 31 means indexed with depth<8, other numerals represent the color type, "T" means @@ -3897,13 +3897,13 @@ Other rules can be inferred by inspecting the libpng source. .SH XIII. Y2K Compliance in libpng -February 25, 2010 +July 2, 2010 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.0.53 are Y2K compliant. It is my belief that earlier +upward through 1.0.54 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has three year fields. One is a 2-byte unsigned integer that @@ -4201,6 +4201,9 @@ the first widely used release: 1.2.43rc01-02 13 10243 12.so.0.43[.0] 1.0.53 10 10053 10.so.0.53[.0] 1.2.43 13 10243 12.so.0.43[.0] + 1.2.44beta01-03 13 10244 12.so.0.44[.0] + 1.2.44rc01-03 13 10244 12.so.0.44[.0] + 1.2.44 13 10244 12.so.0.44[.0] Henceforth the source version will match the shared-library minor and patch numbers; the shared-library major version number will be @@ -4256,7 +4259,7 @@ possible without all of you. Thanks to Frank J. T. Wojcik for helping with the documentation. -Libpng version 1.0.53 - February 25, 2010: +Libpng version 1.0.54 - July 2, 2010: Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net). @@ -4279,7 +4282,7 @@ this sentence. This code is released under the libpng license. -libpng versions 1.2.6, August 15, 2004, through 1.0.53, February 25, 2010, are +libpng versions 1.2.6, August 15, 2004, through 1.0.54, July 2, 2010, are Copyright (c) 2004,2006-2008 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 @@ -4378,7 +4381,7 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson glennrp at users.sourceforge.net -February 25, 2010 +July 2, 2010 .\" end of man page diff --git a/libpngpf.3 b/libpngpf.3 index 4d35c8b1c..c2eb9649e 100644 --- a/libpngpf.3 +++ b/libpngpf.3 @@ -1,6 +1,6 @@ -.TH LIBPNGPF 3 "February 25, 2010" +.TH LIBPNGPF 3 "July 2, 2010" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.0.53 +libpng \- Portable Network Graphics (PNG) Reference Library 1.0.54 (private functions) .SH SYNOPSIS \fB#include <png.h>\fP @@ -1,4 +1,4 @@ -.TH PNG 5 "February 25, 2010" +.TH PNG 5 "July 2, 2010" .SH NAME png \- Portable Network Graphics (PNG) format .SH DESCRIPTION @@ -17,7 +17,7 @@ #include "png.h" /* Generate a compiler error if there is an old png.h in the search path. */ -typedef version_1_0_53 Your_png_h_is_not_version_1_0_53; +typedef version_1_0_54 Your_png_h_is_not_version_1_0_54; /* Version information for C files. This had better match the version * string defined in png.h. @@ -724,13 +724,13 @@ png_get_copyright(png_structp png_ptr) #else #ifdef __STDC__ return ((png_charp) PNG_STRING_NEWLINE \ - "libpng version 1.0.53 - February 25, 2010" PNG_STRING_NEWLINE \ + "libpng version 1.0.54 - July 2, 2010" PNG_STRING_NEWLINE \ "Copyright (c) 1998-2010 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 ((png_charp) "libpng version 1.0.53 - February 25, 2010\ + return ((png_charp) "libpng version 1.0.54 - July 2, 2010\ Copyright (c) 1998-2010 Glenn Randers-Pehrson\ Copyright (c) 1996-1997 Andreas Dilger\ Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc."); @@ -1,6 +1,6 @@ /* png.h - header file for PNG reference library * - * libpng version 1.0.53 - February 25, 2010 + * libpng version 1.0.54 - July 2, 2010 * Copyright (c) 1998-2010 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.) @@ -10,7 +10,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.0.53 - February 25, 2010: Glenn + * libpng versions 0.97, January 1998, through 1.0.54 - July 2, 2010: Glenn * See also "Contributing Authors", below. * * Note about libpng version numbers: @@ -259,6 +259,9 @@ * 1.2.43rc01-02 13 10243 12.so.0.43[.0] * 1.0.53 10 10053 10.so.0.53[.0] * 1.2.43 13 10243 12.so.0.43[.0] + * 1.2.44beta01-03 13 10244 12.so.0.44[.0] + * 1.2.44rc01-03 13 10244 12.so.0.44[.0] + * 1.2.44 13 10244 12.so.0.44[.0] * * Henceforth the source version will match the shared-library major * and minor numbers; the shared-library major version number will be @@ -290,7 +293,7 @@ * * This code is released under the libpng license. * - * libpng versions 1.2.6, August 15, 2004, through 1.0.53, February 25, 2010, are + * libpng versions 1.2.6, August 15, 2004, through 1.0.54, July 2, 2010, are * Copyright (c) 2004, 2006-2010 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: @@ -402,13 +405,13 @@ * Y2K compliance in libpng: * ========================= * - * February 25, 2010 + * July 2, 2010 * * 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.0.53 are Y2K compliant. It is my belief that earlier + * upward through 1.0.54 are Y2K compliant. It is my belief that earlier * versions were also Y2K compliant. * * Libpng only has three year fields. One is a 2-byte unsigned integer @@ -464,9 +467,9 @@ */ /* Version information for png.h - this should match the version in png.c */ -#define PNG_LIBPNG_VER_STRING "1.0.53" +#define PNG_LIBPNG_VER_STRING "1.0.54" #define PNG_HEADER_VERSION_STRING \ - " libpng version 1.0.53 - February 25, 2010\n" + " libpng version 1.0.54 - July 2, 2010\n" #define PNG_LIBPNG_VER_SONUM 0 #define PNG_LIBPNG_VER_DLLNUM 10 @@ -474,7 +477,7 @@ /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */ #define PNG_LIBPNG_VER_MAJOR 1 #define PNG_LIBPNG_VER_MINOR 0 -#define PNG_LIBPNG_VER_RELEASE 53 +#define PNG_LIBPNG_VER_RELEASE 54 /* This should match the numeric part of the final component of * PNG_LIBPNG_VER_STRING, omitting any leading zero: */ @@ -504,7 +507,7 @@ * version 1.0.0 was mis-numbered 100 instead of 10000). From * version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release */ -#define PNG_LIBPNG_VER 10053 /* 1.0.53 */ +#define PNG_LIBPNG_VER 10054 /* 1.0.54 */ #ifndef PNG_VERSION_INFO_ONLY /* Include the compression library's header */ @@ -1544,7 +1547,7 @@ struct png_struct_def /* This triggers a compiler error in png.c, if png.c and png.h * do not agree upon the version number. */ -typedef png_structp version_1_0_53; +typedef png_structp version_1_0_54; typedef png_struct FAR * FAR * png_structpp; @@ -1,7 +1,7 @@ /* pngconf.h - machine configurable file for libpng * - * libpng version 1.0.53 - February 25, 2010 + * libpng version 1.0.54 - July 2, 2010 * Copyright (c) 1998-2010 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.) @@ -442,7 +442,7 @@ png_destroy_struct_2(png_voidp struct_ptr, png_free_ptr free_fn, * have the ability to do that. */ -png_voidp PNGAPI +png_voidp /* PRIVATE */ png_calloc(png_structp png_ptr, png_uint_32 size) { png_voidp ret; diff --git a/pngpread.c b/pngpread.c index 52f41a20c..d066944ca 100644 --- a/pngpread.c +++ b/pngpread.c @@ -1,7 +1,7 @@ /* pngpread.c - read a png file in push mode * - * Last changed in libpng 1.2.43 [February 25, 2010] + * Last changed in libpng 1.2.44 [June 26, 2010] * Copyright (c) 1998-2010 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.) @@ -783,8 +783,7 @@ png_push_read_IDAT(png_structp png_ptr) png_calculate_crc(png_ptr, png_ptr->save_buffer_ptr, save_size); - if (!(png_ptr->flags & PNG_FLAG_ZLIB_FINISHED)) - png_process_IDAT_data(png_ptr, png_ptr->save_buffer_ptr, save_size); + png_process_IDAT_data(png_ptr, png_ptr->save_buffer_ptr, save_size); png_ptr->idat_size -= save_size; png_ptr->buffer_size -= save_size; @@ -807,8 +806,8 @@ png_push_read_IDAT(png_structp png_ptr) save_size = png_ptr->current_buffer_size; png_calculate_crc(png_ptr, png_ptr->current_buffer_ptr, save_size); - if (!(png_ptr->flags & PNG_FLAG_ZLIB_FINISHED)) - png_process_IDAT_data(png_ptr, png_ptr->current_buffer_ptr, save_size); + + png_process_IDAT_data(png_ptr, png_ptr->current_buffer_ptr, save_size); png_ptr->idat_size -= save_size; png_ptr->buffer_size -= save_size; @@ -833,62 +832,101 @@ void /* PRIVATE */ png_process_IDAT_data(png_structp png_ptr, png_bytep buffer, png_size_t buffer_length) { - int ret; - - if ((png_ptr->flags & PNG_FLAG_ZLIB_FINISHED) && buffer_length) - png_error(png_ptr, "Extra compression data"); + /* The caller checks for a non-zero buffer length. */ + if (!(buffer_length > 0) || buffer == NULL) + png_error(png_ptr, "No IDAT data (internal error)"); + /* This routine must process all the data it has been given + * before returning, calling the row callback as required to + * handle the uncompressed results. + */ png_ptr->zstream.next_in = buffer; png_ptr->zstream.avail_in = (uInt)buffer_length; - for (;;) - { - ret = inflate(&png_ptr->zstream, Z_PARTIAL_FLUSH); - if (ret != Z_OK) - { - if (ret == Z_STREAM_END) - { - if (png_ptr->zstream.avail_in) - png_error(png_ptr, "Extra compressed data"); - - if (!(png_ptr->zstream.avail_out)) - { - png_push_process_row(png_ptr); - } - png_ptr->mode |= PNG_AFTER_IDAT; - png_ptr->flags |= PNG_FLAG_ZLIB_FINISHED; - break; - } - else if (ret == Z_BUF_ERROR) - break; + /* Keep going until the decompressed data is all processed + * or the stream marked as finished. + */ + while (png_ptr->zstream.avail_in > 0 && + !(png_ptr->flags & PNG_FLAG_ZLIB_FINISHED)) + { + int ret; - else - png_error(png_ptr, "Decompression Error"); - } - if (!(png_ptr->zstream.avail_out)) + /* We have data for zlib, but we must check that zlib + * has somewhere to put the results. It doesn't matter + * if we don't expect any results -- it may be the input + * data is just the LZ end code. + */ + if (!(png_ptr->zstream.avail_out > 0)) { - if (( -#ifdef PNG_READ_INTERLACING_SUPPORTED - png_ptr->interlaced && png_ptr->pass > 6) || - (!png_ptr->interlaced && -#endif - png_ptr->row_number == png_ptr->num_rows)) - { - if (png_ptr->zstream.avail_in) - png_warning(png_ptr, "Too much data in IDAT chunks"); - png_ptr->flags |= PNG_FLAG_ZLIB_FINISHED; - break; - } - png_push_process_row(png_ptr); png_ptr->zstream.avail_out = (uInt) PNG_ROWBYTES(png_ptr->pixel_depth, png_ptr->iwidth) + 1; png_ptr->zstream.next_out = png_ptr->row_buf; } - else - break; + /* Using Z_SYNC_FLUSH here means that an unterminated + * LZ stream can still be handled (a stream with a missing + * end code), otherwise (Z_NO_FLUSH) a future zlib + * implementation might defer output and, therefore, + * change the current behavior. (See comments in inflate.c + * for why this doesn't happen at present with zlib 1.2.5.) + */ + ret = inflate(&png_ptr->zstream, Z_SYNC_FLUSH); + + /* Check for any failure before proceeding. */ + if (ret != Z_OK && ret != Z_STREAM_END) + { + /* Terminate the decompression. */ + png_ptr->flags |= PNG_FLAG_ZLIB_FINISHED; + + /* This may be a truncated stream (missing or + * damaged end code). Treat that as a warning. + */ + if (png_ptr->row_number >= png_ptr->num_rows || + png_ptr->pass > 6) + png_warning(png_ptr, "Truncated compressed data in IDAT"); + else + png_error(png_ptr, "Decompression error in IDAT"); + + /* Skip the check on unprocessed input */ + return; + } + + /* Did inflate output any data? */ + if (png_ptr->zstream.next_out != png_ptr->row_buf) + { + /* Is this unexpected data after the last row? + * If it is, artificially terminate the LZ output + * here. + */ + if (png_ptr->row_number >= png_ptr->num_rows || + png_ptr->pass > 6) + { + /* Extra data. */ + png_warning(png_ptr, "Extra compressed data in IDAT"); + png_ptr->flags |= PNG_FLAG_ZLIB_FINISHED; + /* Do no more processing; skip the unprocessed + * input check below. + */ + return; + } + + /* Do we have a complete row? */ + if (png_ptr->zstream.avail_out == 0) + png_push_process_row(png_ptr); + } + + /* And check for the end of the stream. */ + if (ret == Z_STREAM_END) + png_ptr->flags |= PNG_FLAG_ZLIB_FINISHED; } + + /* All the data should have been processed, if anything + * is left at this point we have bytes of IDAT data + * after the zlib end code. + */ + if (png_ptr->zstream.avail_in > 0) + png_warning(png_ptr, "Extra compression data"); } void /* PRIVATE */ @@ -904,8 +942,8 @@ png_push_process_row(png_structp png_ptr) png_ptr->row_info.width); png_read_filter_row(png_ptr, &(png_ptr->row_info), - png_ptr->row_buf + 1, png_ptr->prev_row + 1, - (int)(png_ptr->row_buf[0])); + png_ptr->row_buf + 1, png_ptr->prev_row + 1, + (int)(png_ptr->row_buf[0])); png_memcpy_check(png_ptr, png_ptr->prev_row, png_ptr->row_buf, png_ptr->rowbytes + 1); @@ -920,7 +958,7 @@ png_push_process_row(png_structp png_ptr) if (png_ptr->pass < 6) /* old interface (pre-1.0.9): png_do_read_interlace(&(png_ptr->row_info), - png_ptr->row_buf + 1, png_ptr->pass, png_ptr->transformations); + png_ptr->row_buf + 1, png_ptr->pass, png_ptr->transformations); */ png_do_read_interlace(png_ptr); @@ -955,7 +993,7 @@ png_push_process_row(png_structp png_ptr) if (png_ptr->pass == 6 && png_ptr->height <= 4) { - png_push_have_row(png_ptr, png_bytep_NULL); + png_push_have_row(png_ptr, png_bytep_NULL); png_read_push_finish_row(png_ptr); } @@ -995,7 +1033,7 @@ png_push_process_row(png_structp png_ptr) for (i = 0; i < 4 && png_ptr->pass == 2; i++) { - png_push_have_row(png_ptr, png_bytep_NULL); + png_push_have_row(png_ptr, png_bytep_NULL); png_read_push_finish_row(png_ptr); } @@ -1045,13 +1083,13 @@ png_push_process_row(png_structp png_ptr) for (i = 0; i < 2 && png_ptr->pass == 4; i++) { - png_push_have_row(png_ptr, png_bytep_NULL); + png_push_have_row(png_ptr, png_bytep_NULL); png_read_push_finish_row(png_ptr); } if (png_ptr->pass == 6) /* Pass 5 might be empty */ { - png_push_have_row(png_ptr, png_bytep_NULL); + png_push_have_row(png_ptr, png_bytep_NULL); png_read_push_finish_row(png_ptr); } @@ -1070,7 +1108,7 @@ png_push_process_row(png_structp png_ptr) if (png_ptr->pass == 6) /* Skip top generated row */ { - png_push_have_row(png_ptr, png_bytep_NULL); + png_push_have_row(png_ptr, png_bytep_NULL); png_read_push_finish_row(png_ptr); } @@ -1084,7 +1122,7 @@ png_push_process_row(png_structp png_ptr) if (png_ptr->pass != 6) break; - png_push_have_row(png_ptr, png_bytep_NULL); + png_push_have_row(png_ptr, png_bytep_NULL); png_read_push_finish_row(png_ptr); } } @@ -1,8 +1,8 @@ /* pngread.c - read a PNG file * - * Last changed in libpng 1.2.43 [February 25, 2010] - * Copyright (c) 1998-2009 Glenn Randers-Pehrson + * Last changed in libpng 1.2.44 [June 26, 2010] + * Copyright (c) 1998-2010 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.) * diff --git a/pngrutil.c b/pngrutil.c index 9fd48be97..1e2db31b2 100644 --- a/pngrutil.c +++ b/pngrutil.c @@ -1,8 +1,8 @@ /* pngrutil.c - utilities to read a PNG file * - * Last changed in libpng 1.2.43 [February 25, 2010] - * Copyright (c) 1998-2009 Glenn Randers-Pehrson + * Last changed in libpng 1.2.44 [June 26, 2010] + * Copyright (c) 1998-2010 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.) * @@ -220,7 +220,7 @@ png_crc_error(png_structp png_ptr) defined(PNG_READ_iCCP_SUPPORTED) static png_size_t png_inflate(png_structp png_ptr, const png_byte *data, png_size_t size, - png_bytep output, png_size_t output_size) + png_bytep output, png_size_t output_size) { png_size_t count = 0; @@ -246,11 +246,11 @@ png_inflate(png_structp png_ptr, const png_byte *data, png_size_t size, if ((ret == Z_OK || ret == Z_STREAM_END) && avail > 0) { if (output != 0 && output_size > count) - { - int copy = output_size - count; - if (avail < copy) copy = avail; - png_memcpy(output + count, png_ptr->zbuf, copy); - } + { + int copy = output_size - count; + if (avail < copy) copy = avail; + png_memcpy(output + count, png_ptr->zbuf, copy); + } count += avail; } @@ -271,31 +271,33 @@ png_inflate(png_structp png_ptr, const png_byte *data, png_size_t size, * buffer if available. */ { - char *msg, umsg[52]; - if (png_ptr->zstream.msg != 0) - msg = png_ptr->zstream.msg; - else - { + PNG_CONST char *msg; + if (png_ptr->zstream.msg != 0) + msg = png_ptr->zstream.msg; + else + { #if defined(PNG_STDIO_SUPPORTED) && !defined(_WIN32_WCE) - switch (ret) - { - case Z_BUF_ERROR: - msg = "Buffer error in compressed datastream in %s chunk"; - break; - case Z_DATA_ERROR: - msg = "Data error in compressed datastream in %s chunk"; - break; - default: - msg = "Incomplete compressed datastream in %s chunk"; - break; - } - - png_snprintf(umsg, sizeof umsg, msg, png_ptr->chunk_name); - msg = umsg; + char umsg[52]; + + switch (ret) + { + case Z_BUF_ERROR: + msg = "Buffer error in compressed datastream in %s chunk"; + break; + case Z_DATA_ERROR: + msg = "Data error in compressed datastream in %s chunk"; + break; + default: + msg = "Incomplete compressed datastream in %s chunk"; + break; + } + + png_snprintf(umsg, sizeof umsg, msg, png_ptr->chunk_name); + msg = umsg; #else - msg = "Damaged compressed datastream in chunk other than IDAT"; + msg = "Damaged compressed datastream in chunk other than IDAT"; #endif - } + } png_warning(png_ptr, msg); } @@ -330,9 +332,9 @@ png_decompress_chunk(png_structp png_ptr, int comp_type, else if (comp_type == PNG_COMPRESSION_TYPE_BASE) { png_size_t expanded_size = png_inflate(png_ptr, - (png_bytep)(png_ptr->chunkdata + prefix_size), + (png_bytep)(png_ptr->chunkdata + prefix_size), chunklength - prefix_size, - 0/*output*/, 0/*output size*/); + 0/*output*/, 0/*output size*/); /* Now check the limits on this chunk - if the limit fails the * compressed data will be removed, the prefix will remain. @@ -341,8 +343,10 @@ png_decompress_chunk(png_structp png_ptr, int comp_type, if (png_ptr->user_chunk_malloc_max && (prefix_size + expanded_size >= png_ptr->user_chunk_malloc_max - 1)) #else +# ifdef PNG_USER_CHUNK_MALLOC_MAX if ((PNG_USER_CHUNK_MALLOC_MAX > 0) && prefix_size + expanded_size >= PNG_USER_CHUNK_MALLOC_MAX - 1) +# endif #endif png_warning(png_ptr, "Exceeded size limit while expanding chunk"); @@ -351,44 +355,49 @@ png_decompress_chunk(png_structp png_ptr, int comp_type, * and we have nothing to do - the code will exit through the * error case below. */ - else if (expanded_size > 0) +#if defined(PNG_SET_CHUNK_MALLOC_LIMIT_SUPPORTED) || \ + defined(PNG_USER_CHUNK_MALLOC_MAX) + else +#endif + if (expanded_size > 0) { /* Success (maybe) - really uncompress the chunk. */ - png_size_t new_size = 0; - png_charp text = png_malloc_warn(png_ptr, - prefix_size + expanded_size + 1); + png_size_t new_size = 0; + png_charp text = png_malloc_warn(png_ptr, + prefix_size + expanded_size + 1); if (text != NULL) { - png_memcpy(text, png_ptr->chunkdata, prefix_size); - new_size = png_inflate(png_ptr, + png_memcpy(text, png_ptr->chunkdata, prefix_size); + new_size = png_inflate(png_ptr, (png_bytep)(png_ptr->chunkdata + prefix_size), - chunklength - prefix_size, + chunklength - prefix_size, (png_bytep)(text + prefix_size), expanded_size); - text[prefix_size + expanded_size] = 0; /* just in case */ - - if (new_size == expanded_size) - { - png_free(png_ptr, png_ptr->chunkdata); - png_ptr->chunkdata = text; - *newlength = prefix_size + expanded_size; - return; /* The success return! */ - } - - png_warning(png_ptr, "png_inflate logic error"); - png_free(png_ptr, text); - } - else + text[prefix_size + expanded_size] = 0; /* just in case */ + + if (new_size == expanded_size) + { + png_free(png_ptr, png_ptr->chunkdata); + png_ptr->chunkdata = text; + *newlength = prefix_size + expanded_size; + return; /* The success return! */ + } + + png_warning(png_ptr, "png_inflate logic error"); + png_free(png_ptr, text); + } + else png_warning(png_ptr, "Not enough memory to decompress chunk."); } } else /* if (comp_type != PNG_COMPRESSION_TYPE_BASE) */ { +#if defined(PNG_STDIO_SUPPORTED) && !defined(_WIN32_WCE) char umsg[50]; -#if defined(PNG_STDIO_SUPPORTED) && !defined(_WIN32_WCE) - png_snprintf(umsg, sizeof umsg, "Unknown zTXt compression type %d", comp_type); + png_snprintf(umsg, sizeof umsg, "Unknown zTXt compression type %d", + comp_type); png_warning(png_ptr, umsg); #else png_warning(png_ptr, "Unknown zTXt compression type"); @@ -405,13 +414,13 @@ png_decompress_chunk(png_structp png_ptr, int comp_type, png_charp text = png_malloc_warn(png_ptr, prefix_size + 1); if (text != NULL) { - if (prefix_size > 0) + if (prefix_size > 0) png_memcpy(text, png_ptr->chunkdata, prefix_size); - png_free(png_ptr, png_ptr->chunkdata); - png_ptr->chunkdata = text; + png_free(png_ptr, png_ptr->chunkdata); + png_ptr->chunkdata = text; - /* This is an extra zero in the 'uncompressed' part. */ - *(png_ptr->chunkdata + prefix_size) = 0x00; + /* This is an extra zero in the 'uncompressed' part. */ + *(png_ptr->chunkdata + prefix_size) = 0x00; } /* Ignore a malloc error here - it is safe. */ } @@ -907,9 +916,11 @@ png_handle_cHRM(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) green_x, green_y, blue_x, blue_y); #else fprintf(stderr, "wx=%ld, wy=%ld, rx=%ld, ry=%ld\n", - int_x_white, int_y_white, int_x_red, int_y_red); + (long)int_x_white, (long)int_y_white, + (long)int_x_red, (long)int_y_red); fprintf(stderr, "gx=%ld, gy=%ld, bx=%ld, by=%ld\n", - int_x_green, int_y_green, int_x_blue, int_y_blue); + (long)int_x_green, (long)int_y_green, + (long)int_x_blue, (long)int_y_blue); #endif #endif /* PNG_CONSOLE_IO_SUPPORTED */ } @@ -1807,6 +1818,7 @@ png_handle_sCAL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) if (png_ptr->chunkdata == NULL) { png_warning(png_ptr, "Out of memory while processing sCAL chunk"); + png_crc_finish(png_ptr, length); return; } slength = (png_size_t)length; @@ -1828,6 +1840,8 @@ png_handle_sCAL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) if (*vp) { png_warning(png_ptr, "malformed width string in sCAL chunk"); + png_free(png_ptr, png_ptr->chunkdata); + png_ptr->chunkdata = NULL; return; } #else @@ -1836,6 +1850,8 @@ png_handle_sCAL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) if (swidth == NULL) { png_warning(png_ptr, "Out of memory while processing sCAL chunk width"); + png_free(png_ptr, png_ptr->chunkdata); + png_ptr->chunkdata = NULL; return; } png_memcpy(swidth, ep, (png_size_t)png_strlen(ep)); @@ -1849,8 +1865,7 @@ png_handle_sCAL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) if (png_ptr->chunkdata + slength < ep) { png_warning(png_ptr, "Truncated sCAL chunk"); -#if defined(PNG_FIXED_POINT_SUPPORTED) && \ - !defined(PNG_FLOATING_POINT_SUPPORTED) +#if defined(PNG_FIXED_POINT_SUPPORTED) && !defined(PNG_FLOATING_POINT_SUPPORTED) png_free(png_ptr, swidth); #endif png_free(png_ptr, png_ptr->chunkdata); @@ -1863,6 +1878,11 @@ png_handle_sCAL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) if (*vp) { png_warning(png_ptr, "malformed height string in sCAL chunk"); + png_free(png_ptr, png_ptr->chunkdata); + png_ptr->chunkdata = NULL; +#if defined(PNG_FIXED_POINT_SUPPORTED) && !defined(PNG_FLOATING_POINT_SUPPORTED) + png_free(png_ptr, swidth); +#endif return; } #else @@ -1871,6 +1891,11 @@ png_handle_sCAL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) if (sheight == NULL) { png_warning(png_ptr, "Out of memory while processing sCAL chunk height"); + png_free(png_ptr, png_ptr->chunkdata); + png_ptr->chunkdata = NULL; +#if defined(PNG_FIXED_POINT_SUPPORTED) && !defined(PNG_FLOATING_POINT_SUPPORTED) + png_free(png_ptr, swidth); +#endif return; } png_memcpy(sheight, ep, (png_size_t)png_strlen(ep)); @@ -1702,4 +1702,4 @@ main(int argc, char *argv[]) } /* Generate a compiler error if there is an old png.h in the search path. */ -typedef version_1_0_53 your_png_h_is_not_version_1_0_53; +typedef version_1_0_54 your_png_h_is_not_version_1_0_54; @@ -174,7 +174,7 @@ png_default_flush(png_structp png_ptr) * arguments a pointer to a png_struct. After a call to * the flush function, there should be no data in any buffers * or pending transmission. If the output method doesn't do - * any buffering of ouput, a function prototype must still be + * any buffering of output, a function prototype must still be * supplied although it doesn't have to do anything. If * PNG_WRITE_FLUSH_SUPPORTED is not defined at libpng compile * time, output_flush_fn will be ignored, although it must be diff --git a/projects/wince.txt b/projects/wince.txt index 87f568801..692709639 100644 --- a/projects/wince.txt +++ b/projects/wince.txt @@ -1,6 +1,6 @@ A set of project files is available for WinCE. Get -libpng-1.0.53-project-wince.zip from a libpng distribution +libpng-1.0.54-project-wince.zip from a libpng distribution site such as http://libpng.sourceforge.net/index.html Put the zip file in this directory (projects) and then run -"unzip -a libpng-1.0.53-project-wince.zip" +"unzip -a libpng-1.0.54-project-wince.zip" diff --git a/scripts/README.txt b/scripts/README.txt index 8b52f585a..354025216 100644 --- a/scripts/README.txt +++ b/scripts/README.txt @@ -1,8 +1,8 @@ -Makefiles for libpng version 1.0.53 - February 25, 2010 +Makefiles for libpng version 1.0.54 - July 2, 2010 makefile.linux => Linux/ELF makefile - (gcc, creates libpng10.so.0.1.0.53) + (gcc, creates libpng10.so.0.1.0.54) makefile.gcc => Generic makefile (gcc, creates static libpng.a) makefile.knr => Archaic UNIX Makefile that converts files with ansi2knr (Requires ansi2knr.c from @@ -20,7 +20,7 @@ Makefiles for libpng version 1.0.53 - February 25, 2010 makefile.dec => DEC Alpha UNIX makefile makefile.dj2 => DJGPP 2 makefile makefile.elf => Linux/ELF makefile symbol versioning, - gcc, creates libpng10.so.0.1.0.53) + gcc, creates libpng10.so.0.1.0.54) makefile.freebsd => FreeBSD makefile makefile.gcc => Generic gcc makefile makefile.gccmmx => Generic gcc makefile previously using MMX code @@ -38,14 +38,14 @@ Makefiles for libpng version 1.0.53 - February 25, 2010 makefile.os2 => OS/2 Makefile (gcc and emx, requires pngos2.def) makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc makefile.sggcc => Silicon Graphics (gcc, - creates libpng10.so.0.1.0.53) + creates libpng10.so.0.1.0.54) makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib) makefile.solaris => Solaris 2.X makefile (gcc, - creates libpng10.so.0.1.0.53) + creates libpng10.so.0.1.0.54) makefile.solaris-x86 => Solaris 2.X makefile (gcc, no MMX code, - creates libpng10.so.0.1.0.53) + creates libpng10.so.0.1.0.54) makefile.so9 => Solaris 9 makefile (gcc, - creates libpng10.so.0.1.0.53) + creates libpng10.so.0.1.0.54) makefile.std => Generic UNIX makefile (cc, creates static libpng.a) makefile.sunos => Sun makefile makefile.32sunu => Sun Ultra 32-bit makefile diff --git a/scripts/libpng-config-head.in b/scripts/libpng-config-head.in index d18123d53..27d9aea53 100755 --- a/scripts/libpng-config-head.in +++ b/scripts/libpng-config-head.in @@ -11,7 +11,7 @@ # Modeled after libxml-config. -version=1.0.53 +version=1.0.54 prefix="" libdir="" libs="" diff --git a/scripts/libpng.pc.in b/scripts/libpng.pc.in index 47ad1a22c..5245b8db1 100644 --- a/scripts/libpng.pc.in +++ b/scripts/libpng.pc.in @@ -5,6 +5,6 @@ includedir=@includedir@/libpng10 Name: libpng Description: Loads and saves PNG files -Version: 1.0.53 +Version: 1.0.54 Libs: -L${libdir} -lpng10 Cflags: -I${includedir} diff --git a/scripts/makefile.32sunu b/scripts/makefile.32sunu index 1bd7cba0c..38cc18f68 100644 --- a/scripts/makefile.32sunu +++ b/scripts/makefile.32sunu @@ -11,7 +11,7 @@ # Library name: LIBNAME=libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.64sunu b/scripts/makefile.64sunu index af326cc07..45b1a9507 100644 --- a/scripts/makefile.64sunu +++ b/scripts/makefile.64sunu @@ -11,7 +11,7 @@ # Library name: LIBNAME=libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.aix b/scripts/makefile.aix index 0ad9bcdaf..6aaccfdf3 100644 --- a/scripts/makefile.aix +++ b/scripts/makefile.aix @@ -23,7 +23,7 @@ LN_SF = ln -f -s LIBNAME=libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) prefix=/usr/local diff --git a/scripts/makefile.beos b/scripts/makefile.beos index d7669a8b6..f926051c3 100644 --- a/scripts/makefile.beos +++ b/scripts/makefile.beos @@ -11,7 +11,7 @@ # Library name: LIBNAME=libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.cegcc b/scripts/makefile.cegcc index 9b82cadf5..f7819e061 100644 --- a/scripts/makefile.cegcc +++ b/scripts/makefile.cegcc @@ -23,7 +23,7 @@ VERMAJ = 1 VERMIN = 0 -VERMIC = 53 +VERMIC = 54 VER = $(VERMAJ).$(VERMIN).$(VERMIC) NAME = libpng PACKAGE = $(NAME)-$(VER) diff --git a/scripts/makefile.cygwin b/scripts/makefile.cygwin index f53ab2e26..294b71037 100644 --- a/scripts/makefile.cygwin +++ b/scripts/makefile.cygwin @@ -77,7 +77,7 @@ CFLAGS= $(strip $(MINGW_CCFLAGS) $(addprefix -I,$(ZLIBINC)) \ LIBNAME = libpng10 PNGMAJ = 0 CYGDLL = 10 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) SHAREDLIB=cygpng$(CYGDLL).dll diff --git a/scripts/makefile.darwin b/scripts/makefile.darwin index 4ee721cf5..c2b0cca9a 100644 --- a/scripts/makefile.darwin +++ b/scripts/makefile.darwin @@ -22,7 +22,7 @@ ZLIBINC=../zlib # Library name: LIBNAME = libpng10 PNGMAJ = 10 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.dec b/scripts/makefile.dec index e3cfc96e1..e30794a0b 100644 --- a/scripts/makefile.dec +++ b/scripts/makefile.dec @@ -8,7 +8,7 @@ # Library name: PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng10 diff --git a/scripts/makefile.elf b/scripts/makefile.elf index 584239e5c..d66182365 100644 --- a/scripts/makefile.elf +++ b/scripts/makefile.elf @@ -16,7 +16,7 @@ # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx index ca52b76b3..2578d33ee 100644 --- a/scripts/makefile.gcmmx +++ b/scripts/makefile.gcmmx @@ -17,7 +17,7 @@ # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.hp64 b/scripts/makefile.hp64 index 37627d64b..6f557d53e 100644 --- a/scripts/makefile.hp64 +++ b/scripts/makefile.hp64 @@ -21,7 +21,7 @@ ZLIBINC=/opt/zlib/include # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.hpgcc b/scripts/makefile.hpgcc index 8ce27eaeb..94da81122 100644 --- a/scripts/makefile.hpgcc +++ b/scripts/makefile.hpgcc @@ -11,7 +11,7 @@ # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.hpux b/scripts/makefile.hpux index a6ac6a6d2..0b77871e0 100644 --- a/scripts/makefile.hpux +++ b/scripts/makefile.hpux @@ -21,7 +21,7 @@ ZLIBINC=/opt/zlib/include # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.linux b/scripts/makefile.linux index f0f9eb5d8..e379f5c47 100644 --- a/scripts/makefile.linux +++ b/scripts/makefile.linux @@ -10,7 +10,7 @@ # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.mingw b/scripts/makefile.mingw index f605c3581..be756347b 100644 --- a/scripts/makefile.mingw +++ b/scripts/makefile.mingw @@ -81,7 +81,7 @@ CFLAGS= $(strip $(MINGW_CCFLAGS) $(addprefix -I,$(ZLIBINC)) \ LIBNAME = libpng10 PNGMAJ = 0 MINGDLL = 10 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) SHAREDLIB=libpng$(MINGDLL).dll diff --git a/scripts/makefile.ne12bsd b/scripts/makefile.ne12bsd index 8dcb50a57..482990016 100644 --- a/scripts/makefile.ne12bsd +++ b/scripts/makefile.ne12bsd @@ -17,7 +17,7 @@ INCSDIR=${LOCALBASE}/include/libpng10 LIB= png10 SHLIB_MAJOR= 0 -SHLIB_MINOR= 1.0.53 +SHLIB_MINOR= 1.0.54 SRCS= png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \ pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \ pngwtran.c pngmem.c pngerror.c pngpread.c diff --git a/scripts/makefile.netbsd b/scripts/makefile.netbsd index 7dbc80f23..d093172f6 100644 --- a/scripts/makefile.netbsd +++ b/scripts/makefile.netbsd @@ -17,7 +17,7 @@ INCSDIR=${LOCALBASE}/include LIB= png SHLIB_MAJOR= 3 -SHLIB_MINOR= 1.0.53 +SHLIB_MINOR= 1.0.54 SRCS= png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \ pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \ pngwtran.c pngmem.c pngerror.c pngpread.c diff --git a/scripts/makefile.nommx b/scripts/makefile.nommx index 6a99d4284..d2a7f17af 100644 --- a/scripts/makefile.nommx +++ b/scripts/makefile.nommx @@ -10,7 +10,7 @@ # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.openbsd b/scripts/makefile.openbsd index 2fa31b290..0d15063e9 100644 --- a/scripts/makefile.openbsd +++ b/scripts/makefile.openbsd @@ -11,7 +11,7 @@ LIBDIR= ${PREFIX}/lib MANDIR= ${PREFIX}/man/cat SHLIB_MAJOR= 0 -SHLIB_MINOR= 1.0.53 +SHLIB_MINOR= 1.0.54 LIB= png SRCS= png.c pngerror.c pngget.c pngmem.c pngpread.c \ diff --git a/scripts/makefile.sco b/scripts/makefile.sco index 780d9ede2..aa2811884 100644 --- a/scripts/makefile.sco +++ b/scripts/makefile.sco @@ -12,7 +12,7 @@ # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.sggcc b/scripts/makefile.sggcc index f8ef68d4a..413f5c728 100644 --- a/scripts/makefile.sggcc +++ b/scripts/makefile.sggcc @@ -9,7 +9,7 @@ # Library name: LIBNAME=libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.sgi b/scripts/makefile.sgi index e07bec5a2..70371d498 100644 --- a/scripts/makefile.sgi +++ b/scripts/makefile.sgi @@ -9,7 +9,7 @@ # Library name: LIBNAME=libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.so9 b/scripts/makefile.so9 index 869c6a801..5ecbfffe8 100644 --- a/scripts/makefile.so9 +++ b/scripts/makefile.so9 @@ -11,7 +11,7 @@ # Library name: PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng10 diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris index 4828f05c5..97e22c2ab 100644 --- a/scripts/makefile.solaris +++ b/scripts/makefile.solaris @@ -11,7 +11,7 @@ # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/makefile.solaris-x86 b/scripts/makefile.solaris-x86 index b55000460..7b5cb4541 100644 --- a/scripts/makefile.solaris-x86 +++ b/scripts/makefile.solaris-x86 @@ -11,7 +11,7 @@ # Library name: LIBNAME = libpng10 PNGMAJ = 0 -PNGMIN = 1.0.53 +PNGMIN = 1.0.54 PNGVER = $(PNGMAJ).$(PNGMIN) # Shared library names: diff --git a/scripts/png32ce.def b/scripts/png32ce.def index e2ea337d2..6ac972b69 100644 --- a/scripts/png32ce.def +++ b/scripts/png32ce.def @@ -5,7 +5,7 @@ LIBRARY lpngce EXPORTS -;Version 1.0.53 +;Version 1.0.54 png_build_grayscale_palette @1 png_check_sig @2 png_chunk_error @3 diff --git a/scripts/pngos2.def b/scripts/pngos2.def index 09e78ec19..96510981c 100644 --- a/scripts/pngos2.def +++ b/scripts/pngos2.def @@ -2,7 +2,7 @@ ; PNG.LIB module definition file for OS/2 ;---------------------------------------- -; Version 1.0.53 +; Version 1.0.54 LIBRARY PNG DESCRIPTION "PNG image compression library for OS/2" diff --git a/scripts/pngw32.def b/scripts/pngw32.def index 4fe92a567..dbe2469a3 100644 --- a/scripts/pngw32.def +++ b/scripts/pngw32.def @@ -5,7 +5,7 @@ LIBRARY EXPORTS -;Version 1.0.53 +;Version 1.0.54 png_build_grayscale_palette @1 png_check_sig @2 png_chunk_error @3 |