Commit e683cf20 authored by Glenn Randers-Pehrson's avatar Glenn Randers-Pehrson
Browse files

Bug 1299590 - Update in-tree libpng to version 1.6.25. r=tn

--HG--
extra : rebase_source : 1887acea914d4c63927ecb5de4867f8b7968492d
parent dadce88a
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -5675,6 +5675,34 @@ Version 1.6.24rc03 [August 2, 2016]
Version 1.6.24[August 4, 2016]
  No changes.

Version 1.6.25beta01 [August 12, 2016]
  Reject oversized iCCP profile immediately.
  Cleaned up PNG_DEBUG compile of pngtest.c.
  Conditionally compile png_inflate().

Version 1.6.25beta02 [August 18, 2016]
  Don't install pngcp; it conflicts with pngcp in the pngtools package.
  Minor editing of INSTALL, (whitespace, added copyright line)

Version 1.6.25rc01 [August 24, 2016]
  No changes.

Version 1.6.25rc02 [August 29, 2016]
  Added MIPS support (Mandar Sahastrabuddhe <Mandar.Sahastrabuddhe@imgtec.com>).
  Only the UP filter is currently implemented.

Version 1.6.25rc03 [August 29, 2016]
  Rebased contrib/intel/intel_sse.patch after the MIPS implementation.

Version 1.6.25rc04 [August 30, 2016]
  Added MIPS support for SUB, AVG, and PAETH filters (Mandar Sahastrabuddhe).

Version 1.6.25rc05 [August 30, 2016]
  Rebased contrib/intel/intel_sse.patch after the MIPS implementation update..

Version 1.6.25 [September 1, 2016]
  No changes.

Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
+6 −2
Original line number Diff line number Diff line
@@ -8,6 +8,10 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE:
If you modify libpng you may insert additional notices immediately following
this sentence.

pnglibconf.h and moz.build are distributed under the Mozilla Public License,
v. 2.0. If a copy of the MPL was not distributed with this file, You can
obtain one at http://mozilla.org/MPL/2.0/.

This modified version of libpng code adds animated PNG support and is
released under the libpng license described below. The modifications are
Copyright (c) 2006-2007 Andrew Smith, Copyright (c) 2008-2016 Max Stepin,
@@ -22,7 +26,7 @@ Copyright (c) 2016 Google, Inc., and consist of the source files in the

This code is released under the libpng license.

libpng versions 1.0.7, July 1, 2000 through 1.6.24, August 4, 2016 are
libpng versions 1.0.7, July 1, 2000 through 1.6.25, September 1, 2016 are
Copyright (c) 2000-2002, 2004, 2006-2016 Glenn Randers-Pehrson, are
derived from libpng-1.0.6, and are distributed according to the same
disclaimer and license as libpng-1.0.6 with the following individuals
@@ -139,4 +143,4 @@ any encryption software. See the EAR, paragraphs 734.3(b)(3) and

Glenn Randers-Pehrson
glennrp at users.sourceforge.net
August 4, 2016
September 1, 2016
+2 −0
Original line number Diff line number Diff line

Changes made to pristine libpng source by mozilla.org developers.

2016/09/01  -- Synced with libpng-1.6.25 (bug #1299590).

2016/08/11  -- Enabled SSE2 support (bug #1276127).

2016/08/06  -- Synced with libpng-1.6.24 (bug #1291986).
+4 −1
Original line number Diff line number Diff line
README for libpng version 1.6.24 - August 4, 2016 (shared library 16.0)
README for libpng version 1.6.25 - September 1, 2016 (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.
@@ -180,15 +180,18 @@ Files in this distribution:
      pngwutil.c    =>  Write utility functions
      arm           =>  Contains optimized code for the ARM platform
      contrib       =>  Contributions
       arm-neon         =>  Optimized code for ARM-NEON platform
       examples         =>  Example programs
       gregbook         =>  source code for PNG reading and writing, from
                            Greg Roelofs' "PNG: The Definitive Guide",
                            O'Reilly, 1999
       intel            =>  Optimized code for INTEL-SSE2 platform
       libtests         =>  Test programs
       pngminim         =>  Minimal decoder, encoder, and progressive decoder
                            programs demonstrating use of pngusr.dfa
       pngminus         =>  Simple pnm2png and png2pnm programs
       pngsuite         =>  Test images
       testpngs
       tools            =>  Various tools
       visupng          =>  Contains a MSVC workspace for VisualPng
      projects      =>  Contains project files and workspaces for
+19 −19
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@ Index: LICENSE
+
 This code is released under the libpng license.
 
 libpng versions 1.0.7, July 1, 2000 through 1.6.24, August 4, 2016 are
 libpng versions 1.0.7, July 1, 2000 through 1.6.25, September 1, 2016 are
Index: pngread.c
===================================================================
--- pngread.c
@@ -299,8 +299,8 @@ Index: png.c
 #else
 #  ifdef __STDC__
    return PNG_STRING_NEWLINE \
-      "libpng version 1.6.24 - August 4, 2016" PNG_STRING_NEWLINE \
+      "libpng version 1.6.24+apng - August 4, 2016" PNG_STRING_NEWLINE \
-      "libpng version 1.6.25 - September 1, 2016" PNG_STRING_NEWLINE \
+      "libpng version 1.6.25+apng - September 1, 2016" PNG_STRING_NEWLINE \
       "Copyright (c) 1998-2002,2004,2006-2016 Glenn Randers-Pehrson" \
       PNG_STRING_NEWLINE \
       "Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \
@@ -310,8 +310,8 @@ Index: png.c
+      "Portions Copyright (c) 2006-2007 Andrew Smith" PNG_STRING_NEWLINE \
+      "Portions Copyright (c) 2008-2016 Max Stepin" PNG_STRING_NEWLINE ;
 #  else
-   return "libpng version 1.6.24 - August 4, 2016\
+   return "libpng version 1.6.24+apng - August 4, 2016\
-   return "libpng version 1.6.25 - September 1, 2016\
+   return "libpng version 1.6.25+apng - September 1, 2016\
       Copyright (c) 1998-2002,2004,2006-2016 Glenn Randers-Pehrson\
       Copyright (c) 1996-1997 Andreas Dilger\
-      Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.";
@@ -338,19 +338,19 @@ Index: png.h
  * This code is released under the libpng license.
  *
  * Some files in the "contrib" directory and some configure-generated
@@ -313,8 +319,9 @@
@@ -314,8 +320,9 @@
  */
 
 /* Version information for png.h - this should match the version in png.c */
-#define PNG_LIBPNG_VER_STRING "1.6.24"
-#define PNG_HEADER_VERSION_STRING " libpng version 1.6.24 - August 4, 2016\n"
+#define PNG_LIBPNG_VER_STRING "1.6.24+apng"
-#define PNG_LIBPNG_VER_STRING "1.6.25"
-#define PNG_HEADER_VERSION_STRING " libpng version 1.6.25 - September 1, 2016\n"
+#define PNG_LIBPNG_VER_STRING "1.6.25+apng"
+#define PNG_HEADER_VERSION_STRING \
+     " libpng version 1.6.24+apng - August 4, 2016\n"
+     " libpng version 1.6.25+apng - September 1, 2016\n"
 
 #define PNG_LIBPNG_VER_SONUM   16
 #define PNG_LIBPNG_VER_DLLNUM  16
@@ -365,6 +372,10 @@
@@ -366,6 +373,10 @@
 #   include "pnglibconf.h"
 #endif
 
@@ -361,7 +361,7 @@ Index: png.h
 #ifndef PNG_VERSION_INFO_ONLY
 /* Machine specific configuration. */
 #  include "pngconf.h"
@@ -460,6 +471,17 @@
@@ -461,6 +472,17 @@
  * See pngconf.h for base types that vary by machine/system
  */
 
@@ -379,7 +379,7 @@ Index: png.h
 /* This triggers a compiler error in png.c, if png.c and png.h
  * do not agree upon the version number.
  */
@@ -780,6 +802,10 @@
@@ -781,6 +803,10 @@
 #define PNG_INFO_sPLT 0x2000U  /* ESR, 1.0.6 */
 #define PNG_INFO_sCAL 0x4000U  /* ESR, 1.0.6 */
 #define PNG_INFO_IDAT 0x8000U  /* ESR, 1.0.6 */
@@ -390,7 +390,7 @@ Index: png.h
 
 /* This is used for the transformation routines, as some of them
  * change these values for the row.  It also should enable using
@@ -817,6 +843,10 @@
@@ -818,6 +844,10 @@
 #ifdef PNG_PROGRESSIVE_READ_SUPPORTED
 typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_infop));
 typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_infop));
@@ -401,7 +401,7 @@ Index: png.h
 
 /* The following callback receives png_uint_32 row_number, int pass for the
  * png_bytep data of the row.  When transforming an interlaced image the
@@ -3242,6 +3272,75 @@
@@ -3246,6 +3276,75 @@
  *  END OF HARDWARE AND SOFTWARE OPTIONS
  ******************************************************************************/
 
@@ -477,7 +477,7 @@ Index: png.h
 /* Maintainer: Put new public prototypes here ^, in libpng.3, in project
  * defs, and in scripts/symbols.def.
  */
@@ -3250,7 +3349,11 @@
@@ -3254,7 +3353,11 @@
  * one to use is one more than this.)
  */
 #ifdef PNG_EXPORT_LAST_ORDINAL
@@ -493,7 +493,7 @@ Index: pngpriv.h
===================================================================
--- pngpriv.h
+++ pngpriv.h
@@ -537,6 +537,10 @@
@@ -566,6 +566,10 @@
 #define PNG_HAVE_CHUNK_AFTER_IDAT 0x2000 /* Have another chunk after IDAT */
                    /*             0x4000 (unused) */
 #define PNG_IS_READ_STRUCT        0x8000 /* Else is a write struct */
@@ -504,7 +504,7 @@ Index: pngpriv.h
 
 /* Flags for the transformations the PNG library does on the image data */
 #define PNG_BGR                 0x0001
@@ -754,6 +758,16 @@
@@ -783,6 +787,16 @@
 #define png_tRNS PNG_U32(116,  82,  78,  83)
 #define png_zTXt PNG_U32(122,  84,  88, 116)
 
@@ -521,7 +521,7 @@ Index: pngpriv.h
 /* The following will work on (signed char*) strings, whereas the get_uint_32
  * macro will fail on top-bit-set values because of the sign extension.
  */
@@ -1443,6 +1457,49 @@
@@ -1489,6 +1503,49 @@
 
 #endif /* PROGRESSIVE_READ */
 
Loading