[libpng16] Imported from libpng-1.6.35beta01.tar
diff --git a/ANNOUNCE b/ANNOUNCE
index 1b30fea..bc7be63 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,4 +1,4 @@
-Libpng 1.6.35beta01 - January 8, 2018
+Libpng 1.6.35beta01 - March 6, 2018
 
 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.
@@ -24,7 +24,7 @@
 
 Changes since the last public release (1.6.34):
 
-Version 1.6.35beta01 [January 8, 2018]
+Version 1.6.35beta01 [March 6, 2018]
   Restored 21 of the contrib/pngsuite/i*.png, which do not cause test
     failures. Placed the remainder in contrib/pngsuite/interlaced/i*.png.
   Added calls to png_set_*() transforms commonly used by browsers to
@@ -33,6 +33,9 @@
   Fixed miscellaneous typos (Patch by github user "luzpaz")
   Change "ASM C" to "C ASM" in CMakeLists.txt
   Fixed incorrect handling of bKGD chunk in sub-8-bit files (Cosmin)
+  Added hardware optimization directories to zip and 7z distributions.
+  Fixed incorrect bitmask for options.
+  Fixed many spelling typos.
 
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 (subscription required; visit
diff --git a/CHANGES b/CHANGES
index c7ce777..99f7681 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6040,7 +6040,7 @@
 Version 1.6.34 [September 29, 2017]
   Removed contrib/pngsuite/i*.png; some of them caused test failures.
 
-Version 1.6.35beta01 [January 8, 2018]
+Version 1.6.35beta01 [March 6, 2018]
   Restored 21 of the contrib/pngsuite/i*.png, which do not cause test
     failures. Placed the remainder in contrib/pngsuite/interlaced/i*.png.
   Added calls to png_set_*() transforms commonly used by browsers to
@@ -6049,6 +6049,9 @@
   Fixed miscellaneous typos (Patch by github user "luzpaz").
   Change "ASM C" to "C ASM" in CMakeLists.txt
   Fixed incorrect handling of bKGD chunk in sub-8-bit files (Cosmin)
+  Added hardware optimization directories to zip and 7z distributions.
+  Fixed incorrect bitmask for options.
+  Fixed many spelling typos.
 
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 (subscription required; visit
diff --git a/LICENSE b/LICENSE
index 2272059..27c0846 100644
--- a/LICENSE
+++ b/LICENSE
@@ -10,7 +10,7 @@
 
 This code is released under the libpng license.
 
-libpng versions 1.0.7, July 1, 2000 through 1.6.35beta01, January 8, 2018 are
+libpng versions 1.0.7, July 1, 2000 through 1.6.35beta01, March 6, 2018 are
 Copyright (c) 2000-2002, 2004, 2006-2018 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
@@ -130,4 +130,4 @@
 
 Glenn Randers-Pehrson
 glennrp at users.sourceforge.net
-January 8, 2018
+March 6, 2018
diff --git a/README b/README
index bd24508..8b4a1bc 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README for libpng version 1.6.35beta01 - September 29, 2017 (shared library 16.0)
+README for libpng version 1.6.35beta01 - March 6, 2018 (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/oss-fuzz/build.sh b/contrib/oss-fuzz/build.sh
index 877518f..f1bc2f6 100755
--- a/contrib/oss-fuzz/build.sh
+++ b/contrib/oss-fuzz/build.sh
@@ -14,7 +14,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-# Last changed in libpng 1.6.35 [October 7, 2017]
+# Last changed in libpng 1.6.35 [March 6, 2018]
 #
 # Revisions by Glenn Randers-Pehrson, 2017:
 # 1. Build only the library, not the tools (changed "make -j$(nproc) all" to
diff --git a/contrib/oss-fuzz/libpng_read_fuzzer.cc b/contrib/oss-fuzz/libpng_read_fuzzer.cc
index c0caa6b..32f0af2 100644
--- a/contrib/oss-fuzz/libpng_read_fuzzer.cc
+++ b/contrib/oss-fuzz/libpng_read_fuzzer.cc
@@ -1,11 +1,11 @@
 
 // libpng_read_fuzzer.cc
-// Copyright 2017 Glenn Randers-Pehrson
+// Copyright 2017-2018 Glenn Randers-Pehrson
 // Copyright 2015 The Chromium Authors. All rights reserved.
 // Use of this source code is governed by a BSD-style license that may
 // be found in the LICENSE file https://cs.chromium.org/chromium/src/LICENSE
 
-// Last changed in libpng 1.6.35 [October 30, 2017]
+// Last changed in libpng 1.6.35 [March 6, 2018]
 
 // The modifications in 2017 by Glenn Randers-Pehrson include
 // 1. addition of a PNG_CLEANUP macro,
@@ -165,7 +165,7 @@
   png_set_gray_to_rgb(png_handler.png_ptr);
   png_set_expand(png_handler.png_ptr);
   png_set_packing(png_handler.png_ptr);
-  // png_set_scale_16(png_handler.png_ptr);
+  png_set_scale_16(png_handler.png_ptr);
   png_set_tRNS_to_alpha(png_handler.png_ptr);
 
   int passes = png_set_interlace_handling(png_handler.png_ptr);
diff --git a/contrib/pngsuite/bad_interlace_conversions.txt b/contrib/pngsuite/bad_interlace_conversions.txt
new file mode 100644
index 0000000..8afbde7
--- /dev/null
+++ b/contrib/pngsuite/bad_interlace_conversions.txt
@@ -0,0 +1,9 @@
+basn0g01.png
+basn0g02.png
+basn0g04.png
+basn3p01.png
+basn3p02.png
+basn3p04.png
+ftbbn0g01.png
+ftbbn0g02.png
+ftbbn0g04.png
diff --git a/contrib/powerpc-vsx/README b/contrib/powerpc-vsx/README
index e566147..4970a52 100644
--- a/contrib/powerpc-vsx/README
+++ b/contrib/powerpc-vsx/README
@@ -46,7 +46,7 @@
 
 static int png_have_vsx(png_structp png_ptr);
 
-That function must return 1 if ARM NEON instructions are supported, 0 if not.
+That function must return 1 if POWERPC_VSX instructions are supported, 0 if not.
 It must not execute png_error unless it detects a bug.  A png_error will prevent
 the reading of the PNG and in the future, writing too.
 
diff --git a/libpng-manual.txt b/libpng-manual.txt
index 3e97db4..abecdf2 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.35beta01 - January 8, 2018
+ libpng version 1.6.35beta01 - March 6, 2018
  Updated and distributed by Glenn Randers-Pehrson
  <glennrp at users.sourceforge.net>
  Copyright (c) 1998-2017 Glenn Randers-Pehrson
@@ -11,7 +11,7 @@
 
  Based on:
 
- libpng versions 0.97, January 1998, through 1.6.35beta01 - January 8, 2018
+ libpng versions 0.97, January 1998, through 1.6.35beta01 - March 6, 2018
  Updated and distributed by Glenn Randers-Pehrson
  Copyright (c) 1998-2017 Glenn Randers-Pehrson
 
diff --git a/libpng.3 b/libpng.3
index 2b23891..4bcfc6a 100644
--- a/libpng.3
+++ b/libpng.3
@@ -1,4 +1,4 @@
-.TH LIBPNG 3 "January 8, 2018"
+.TH LIBPNG 3 "March 6, 2018"
 .SH NAME
 libpng \- Portable Network Graphics (PNG) Reference Library 1.6.35beta01
 .SH SYNOPSIS
@@ -518,7 +518,7 @@
 .SH LIBPNG.TXT
 libpng-manual.txt - A description on how to use and modify libpng
 
- libpng version 1.6.35beta01 - January 8, 2018
+ libpng version 1.6.35beta01 - March 6, 2018
  Updated and distributed by Glenn Randers-Pehrson
  <glennrp at users.sourceforge.net>
  Copyright (c) 1998-2017 Glenn Randers-Pehrson
@@ -529,7 +529,7 @@
 
  Based on:
 
- libpng versions 0.97, January 1998, through 1.6.35beta01 - January 8, 2018
+ libpng versions 0.97, January 1998, through 1.6.35beta01 - March 6, 2018
  Updated and distributed by Glenn Randers-Pehrson
  Copyright (c) 1998-2017 Glenn Randers-Pehrson
 
@@ -6090,7 +6090,7 @@
 
 Thanks to Frank J. T. Wojcik for helping with the documentation.
 
-Libpng version 1.6.35beta01 - January 8, 2018:
+Libpng version 1.6.35beta01 - March 6, 2018:
 Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
 Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
 
@@ -6115,7 +6115,7 @@
 
 This code is released under the libpng license.
 
-libpng versions 1.0.7, July 1, 2000 through 1.6.35beta01, January 8, 2018 are
+libpng versions 1.0.7, July 1, 2000 through 1.6.35beta01, March 6, 2018 are
 Copyright (c) 2000-2002, 2004, 2006-2018 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
@@ -6243,7 +6243,7 @@
 
 Glenn Randers-Pehrson
 glennrp at users.sourceforge.net
-January 8, 2018
+March 6, 2018
 
 .\" end of man page
 
diff --git a/png.c b/png.c
index cc6029e..a7beaaf 100644
--- a/png.c
+++ b/png.c
@@ -816,14 +816,14 @@
 #else
 #  ifdef __STDC__
    return PNG_STRING_NEWLINE \
-      "libpng version 1.6.35beta01 - January 8, 2018" PNG_STRING_NEWLINE \
+      "libpng version 1.6.35beta01 - March 6, 2018" PNG_STRING_NEWLINE \
       "Copyright (c) 1998-2002,2004,2006-2018 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.35beta01 - January 8, 2018\
+   return "libpng version 1.6.35beta01 - March 6, 2018\
       Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson\
       Copyright (c) 1996-1997 Andreas Dilger\
       Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.";
diff --git a/png.h b/png.h
index 04c36b5..9143faf 100644
--- a/png.h
+++ b/png.h
@@ -1,9 +1,9 @@
 
 /* png.h - header file for PNG reference library
  *
- * libpng version 1.6.35beta01, September 29, 2017
+ * libpng version 1.6.35beta01, March 6, 2018
  *
- * Copyright (c) 1998-2002,2004,2006-2017 Glenn Randers-Pehrson
+ * Copyright (c) 1998-2002,2004,2006-2018 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.)
  *
@@ -12,7 +12,7 @@
  * Authors and maintainers:
  *   libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat
  *   libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger
- *   libpng versions 0.97, January 1998, through 1.6.35beta01, September 29, 2017:
+ *   libpng versions 0.97, January 1998, through 1.6.35beta01, March 6, 2018:
  *     Glenn Randers-Pehrson.
  *   See also "Contributing Authors", below.
  */
@@ -25,8 +25,8 @@
  *
  * This code is released under the libpng license.
  *
- * libpng versions 1.0.7, July 1, 2000 through 1.6.35beta01, September 29, 2017 are
- * Copyright (c) 2000-2002, 2004, 2006-2017 Glenn Randers-Pehrson, are
+ * libpng versions 1.0.7, July 1, 2000 through 1.6.35beta01, March 6, 2018 are
+ * Copyright (c) 2000-2002, 2004, 2006-2018 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
  * added to the list of Contributing Authors:
@@ -241,7 +241,7 @@
  * Y2K compliance in libpng:
  * =========================
  *
- *    September 29, 2017
+ *    March 6, 2018
  *
  *    Since the PNG Development group is an ad-hoc body, we can't make
  *    an official declaration.
@@ -310,7 +310,7 @@
 
 /* Version information for png.h - this should match the version in png.c */
 #define PNG_LIBPNG_VER_STRING "1.6.35beta01"
-#define PNG_HEADER_VERSION_STRING " libpng version 1.6.35beta01 - September 29, 2017\n"
+#define PNG_HEADER_VERSION_STRING " libpng version 1.6.35beta01 - March 6, 2018\n"
 
 #define PNG_LIBPNG_VER_SONUM   16
 #define PNG_LIBPNG_VER_DLLNUM  16
diff --git a/pngconf.h b/pngconf.h
index 048da1d..c242026 100644
--- a/pngconf.h
+++ b/pngconf.h
@@ -1,7 +1,7 @@
 
 /* pngconf.h - machine configurable file for libpng
  *
- * libpng version 1.6.35beta01, September 29, 2017
+ * libpng version 1.6.35beta01, March 6, 2018
  *
  * Copyright (c) 1998-2002,2004,2006-2016 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngrtran.c b/pngrtran.c
index 40c2ce5..8cfb331 100644
--- a/pngrtran.c
+++ b/pngrtran.c
@@ -2,7 +2,7 @@
 /* pngrtran.c - transforms the data in a row for PNG readers
  *
  * Last changed in libpng 1.6.35 [(PENDING RELEASE)]
- * Copyright (c) 1998-2002,2004,2006-2017 Glenn Randers-Pehrson
+ * Copyright (c) 1998-2002,2004,2006-2018 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.)
  *
@@ -4755,8 +4755,7 @@
                 &(png_ptr->trans_color));
 
          else
-            png_do_expand(row_info, png_ptr->row_buf + 1,
-                (png_const_color_16p)NULL);
+            png_do_expand(row_info, png_ptr->row_buf + 1, NULL);
       }
    }
 #endif
diff --git a/pngset.c b/pngset.c
index 3e8be73..6f3a1ee 100644
--- a/pngset.c
+++ b/pngset.c
@@ -623,7 +623,7 @@
        PNG_MAX_PALETTE_LENGTH * (sizeof (png_color))));
 
    if (num_palette > 0)
-      memcpy(png_ptr->palette, palette, (unsigned int)PNG_MAX_PALETTE_LENGTH *
+      memcpy(png_ptr->palette, palette, (unsigned int)num_palette *
           (sizeof (png_color)));
    info_ptr->palette = png_ptr->palette;
    info_ptr->num_palette = png_ptr->num_palette = (png_uint_16)num_palette;
diff --git a/projects/vstudio/README.txt b/projects/vstudio/README.txt
index c617ec1..bb06b71 100644
--- a/projects/vstudio/README.txt
+++ b/projects/vstudio/README.txt
@@ -1,7 +1,7 @@
 
 VisualStudio instructions
 
-libpng version 1.6.35beta01 - September 29, 2017
+libpng version 1.6.35beta01 - March 6, 2018
 
 Copyright (c) 2010,2013,2015 Glenn Randers-Pehrson
 
diff --git a/projects/vstudio/zlib.props b/projects/vstudio/zlib.props
index f447118..39799cc 100644
--- a/projects/vstudio/zlib.props
+++ b/projects/vstudio/zlib.props
@@ -2,7 +2,7 @@
 <!--
  * zlib.props - location of zlib source
  *
- * libpng version 1.6.35beta01 - September 29, 2017
+ * libpng version 1.6.35beta01 - March 6, 2018
  *
  * Copyright (c) 1998-2011 Glenn Randers-Pehrson
  *
diff --git a/scripts/README.txt b/scripts/README.txt
index 268794c..498b6c9 100644
--- a/scripts/README.txt
+++ b/scripts/README.txt
@@ -1,5 +1,5 @@
 
-Makefiles for  libpng version 1.6.35beta01 - September 29, 2017
+Makefiles for  libpng version 1.6.35beta01 - March 6, 2018
 
 pnglibconf.h.prebuilt       =>  Stores configuration settings
  makefile.linux    =>  Linux/ELF makefile
diff --git a/scripts/pnglibconf.h.prebuilt b/scripts/pnglibconf.h.prebuilt
index 12fac0a..cc2b8cf 100644
--- a/scripts/pnglibconf.h.prebuilt
+++ b/scripts/pnglibconf.h.prebuilt
@@ -2,7 +2,7 @@
 
 /* pnglibconf.h - library build configuration */
 
-/* Libpng version 1.6.35beta01 - September 29, 2017 */
+/* Libpng version 1.6.35beta01 - March 6, 2018 */
 
 /* Copyright (c) 1998-2017 Glenn Randers-Pehrson */