[libpng14] Imported from libpng-1.4.18rc01.tar
diff --git a/ANNOUNCE b/ANNOUNCE
index a03e24b..176f2e4 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,5 +1,5 @@
 
-Libpng 1.4.18beta02 - November 23, 2015
+Libpng 1.4.18rc01 - November 26, 2015
 
 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.
@@ -9,21 +9,21 @@
 Source files with LF line endings (for Unix/Linux) and with a
 "configure" script
 
-   1.4.18beta02.tar.xz (LZMA-compressed, recommended)
-   1.4.18beta02.tar.gz
-   1.4.18beta02.tar.bz2
+   1.4.18rc01.tar.xz (LZMA-compressed, recommended)
+   1.4.18rc01.tar.gz
+   1.4.18rc01.tar.bz2
 
 Source files with CRLF line endings (for Windows), without the
 "configure" script
 
-   lp1418b02.7z (LZMA-compressed, recommended)
-   lp1418b02.zip
+   lp1418r01.7z (LZMA-compressed, recommended)
+   lp1418r01.zip
 
 Other information:
 
-   1.4.18beta02-README.txt
-   1.4.18beta02-LICENSE.txt
-   libpng-1.4.18beta02-*.asc (armored detached GPG signatures)
+   1.4.18rc01-README.txt
+   1.4.18rc01-LICENSE.txt
+   libpng-1.4.18rc01-*.asc (armored detached GPG signatures)
 
 Changes since the last public release (1.4.17):
 
@@ -31,9 +31,13 @@
   Avoid potential pointer overflow in png_handle_iTXt(), png_handle_zTXt(),
     png_handle_sPLT(), and png_handle_pCAL() (Bug report by John Regehr).
 
-version 1.4.18beta02 [%RDATE%]
-  Fixed bug recently introduced in png_set_PLTE() that uses png_ptr
-    not info_ptr.
+version 1.4.18beta02 [November 23, 2015]
+  Fixed incorrect implementation of png_set_PLTE() that uses png_ptr
+    not info_ptr, that left png_set_PLTE() open to the CVE-2015-8126
+    vulnerability.
+
+version 1.4.18rc01 [November 26, 2015]
+  Discontinued distributing tar.bz2 archives.
 
 Send comments/corrections/commendations to glennrp at users.sourceforge.net
 or to png-mng-implement at lists.sf.net (subscription required; visit
diff --git a/CHANGES b/CHANGES
index 461b882..e860fb9 100644
--- a/CHANGES
+++ b/CHANGES
@@ -3012,8 +3012,12 @@
     png_handle_sPLT(), and png_handle_pCAL() (Bug report by John Regehr).
 
 version 1.4.18beta02 [November 23, 2015]
-  Fixed bug recently introduced in png_set_PLTE() that uses png_ptr
-    not info_ptr.
+  Fixed incorrect implementation of png_set_PLTE() that uses png_ptr
+    not info_ptr, that left png_set_PLTE() open to the CVE-2015-8126
+    vulnerability.
+
+version 1.4.18rc01 [November 26, 2015]
+  Discontinued distributing tar.bz2 archives.
 
 Send comments/corrections/commendations to glennrp at users.sourceforge.net
 or to png-mng-implement at lists.sf.net (subscription required; visit
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e26c8f7..632ab13 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -255,7 +255,7 @@
 # SET UP LINKS
 if(PNG_SHARED)
   set_target_properties(${PNG_LIB_NAME} PROPERTIES
-#   VERSION 14.${PNGLIB_RELEASE}.1.4.18beta02
+#   VERSION 14.${PNGLIB_RELEASE}.1.4.18rc01
     VERSION 14.${PNGLIB_RELEASE}.0
     SOVERSION 14
     CLEAN_DIRECT_OUTPUT 1)
diff --git a/INSTALL b/INSTALL
index 92952d5..a746a29 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,5 @@
 
-Installing libpng version 1.4.18beta02 - November 23, 2015
+Installing libpng version 1.4.18rc01 - November 26, 2015
 
 On Unix/Linux and similar systems, you can simply type
 
@@ -46,7 +46,7 @@
 correspond to the version of zlib that's installed.
 
 You can rename the directories that you downloaded (they
-might be called "libpng-1.4.18beta02" or "libpng14" and "zlib-1.2.3"
+might be called "libpng-1.4.18rc01" or "libpng14" and "zlib-1.2.3"
 or "zlib123") so that you have directories called "zlib" and "libpng".
 
 Your directory structure should look like this:
diff --git a/LICENSE b/LICENSE
index 87f57b7..4afcc67 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.4.18beta02, November 23, 2015, are
+libpng versions 1.0.7, July 1, 2000, through 1.4.18rc01, November 26, 2015, are
 Copyright (c) 2000-2002, 2004, 2006-2015 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
@@ -107,4 +107,4 @@
 
 Glenn Randers-Pehrson
 glennrp at users.sourceforge.net
-November 23, 2015
+November 26, 2015
diff --git a/Makefile.am b/Makefile.am
index acb01ef..69f7a1e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -79,7 +79,7 @@
 	${srcdir}/contrib/pngsuite/* \
 	${srcdir}/contrib/visupng/* \
 	$(TESTS) \
-	example.c libpng-1.4.18beta02.txt
+	example.c libpng-1.4.18rc01.txt
 
 CLEANFILES= pngout.png libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.pc libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@-config libpng.vers \
 libpng.sym
diff --git a/Makefile.in b/Makefile.in
index 5a903a1..e0e2a8a 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -628,7 +628,7 @@
 	${srcdir}/contrib/pngsuite/* \
 	${srcdir}/contrib/visupng/* \
 	$(TESTS) \
-	example.c libpng-1.4.18beta02.txt
+	example.c libpng-1.4.18rc01.txt
 
 CLEANFILES = pngout.png libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.pc libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@-config libpng.vers \
 libpng.sym
diff --git a/README b/README
index 5de24bc..f41370e 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README for libpng version 1.4.18beta02 - November 23, 2015 (shared library 14.0)
+README for libpng version 1.4.18rc01 - November 26, 2015 (shared library 14.0)
 See the note about version numbers near the top of png.h
 
 See INSTALL for instructions on how to install libpng.
@@ -187,9 +187,9 @@
        makefile.std     =>  Generic UNIX makefile (cc, creates static
                             libpng.a)
        makefile.elf     =>  Linux/ELF makefile symbol versioning,
-                            (gcc, creates libpng14.so.14.1.4.18beta02)
+                            (gcc, creates libpng14.so.14.1.4.18rc01)
        makefile.linux   =>  Linux/ELF makefile
-                            (gcc, creates libpng14.so.14.1.4.18beta02)
+                            (gcc, creates libpng14.so.14.1.4.18rc01)
        makefile.gcc     =>  Generic makefile (gcc, creates static libpng.a)
        makefile.knr     =>  Archaic UNIX Makefile that converts files with
                             ansi2knr (Requires ansi2knr.c from
@@ -211,12 +211,12 @@
        makefile.openbsd =>  OpenBSD makefile
        makefile.sgi     =>  Silicon Graphics IRIX (cc, creates static lib)
        makefile.sggcc   =>  Silicon Graphics
-                            (gcc, creates libpng14.so.14.1.4.18beta02)
+                            (gcc, creates libpng14.so.14.1.4.18rc01)
        makefile.sunos   =>  Sun makefile
        makefile.solaris =>  Solaris 2.X makefile
-                            (gcc, creates libpng14.so.14.1.4.18beta02)
+                            (gcc, creates libpng14.so.14.1.4.18rc01)
        makefile.so9     =>  Solaris 9 makefile
-                            (gcc, creates libpng14.so.14.1.4.18beta02)
+                            (gcc, creates libpng14.so.14.1.4.18rc01)
        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
diff --git a/configure b/configure
index 20623bd..e4c31a9 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for libpng 1.4.18beta02.
+# Generated by GNU Autoconf 2.69 for libpng 1.4.18rc01.
 #
 # Report bugs to <png-mng-implement@lists.sourceforge.net>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='libpng'
 PACKAGE_TARNAME='libpng'
-PACKAGE_VERSION='1.4.18beta02'
-PACKAGE_STRING='libpng 1.4.18beta02'
+PACKAGE_VERSION='1.4.18rc01'
+PACKAGE_STRING='libpng 1.4.18rc01'
 PACKAGE_BUGREPORT='png-mng-implement@lists.sourceforge.net'
 PACKAGE_URL=''
 
@@ -1333,7 +1333,7 @@
   # 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.4.18beta02 to adapt to many kinds of systems.
+\`configure' configures libpng 1.4.18rc01 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1403,7 +1403,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libpng 1.4.18beta02:";;
+     short | recursive ) echo "Configuration of libpng 1.4.18rc01:";;
    esac
   cat <<\_ACEOF
 
@@ -1520,7 +1520,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libpng configure 1.4.18beta02
+libpng configure 1.4.18rc01
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1943,7 +1943,7 @@
 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.4.18beta02, which was
+It was created by libpng $as_me 1.4.18rc01, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2806,7 +2806,7 @@
 
 # Define the identity of the package.
  PACKAGE='libpng'
- VERSION='1.4.18beta02'
+ VERSION='1.4.18rc01'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2923,7 +2923,7 @@
 
 
 
-PNGLIB_VERSION=1.4.18beta02
+PNGLIB_VERSION=1.4.18rc01
 PNGLIB_MAJOR=1
 PNGLIB_MINOR=4
 PNGLIB_RELEASE=18
@@ -13615,7 +13615,7 @@
 # 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.4.18beta02, which was
+This file was extended by libpng $as_me 1.4.18rc01, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -13681,7 +13681,7 @@
 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.4.18beta02
+libpng config.status 1.4.18rc01
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index 7edbd91..7235c1b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -16,14 +16,14 @@
 dnl stamps are correct
 AC_PREREQ(2.59)
 
-AC_INIT([libpng], [1.4.18beta02], [png-mng-implement@lists.sourceforge.net])
+AC_INIT([libpng], [1.4.18rc01], [png-mng-implement@lists.sourceforge.net])
 AM_INIT_AUTOMAKE
 dnl stop configure from automagically running automake
 AM_MAINTAINER_MODE
 
 dnl Version number stuff here:
 
-PNGLIB_VERSION=1.4.18beta02
+PNGLIB_VERSION=1.4.18rc01
 PNGLIB_MAJOR=1
 PNGLIB_MINOR=4
 PNGLIB_RELEASE=18
diff --git a/contrib/gregbook/rpng-x.c b/contrib/gregbook/rpng-x.c
index 0a98170..b9e4307 100644
--- a/contrib/gregbook/rpng-x.c
+++ b/contrib/gregbook/rpng-x.c
@@ -252,8 +252,8 @@
             else {
                 bgstr = *argv;
                 if (strlen(bgstr) != 7 || bgstr[0] != '#')
-                    ++error; 
-                else 
+                    ++error;
+                else
                     have_bg = TRUE;
             }
         } else {
diff --git a/contrib/gregbook/rpng2-x.c b/contrib/gregbook/rpng2-x.c
index eea95fb..0c8ddeb 100644
--- a/contrib/gregbook/rpng2-x.c
+++ b/contrib/gregbook/rpng2-x.c
@@ -496,12 +496,12 @@
           "\t\t  transparent images; overrides -bgcolor\n",
           num_bgpat-1);
 #ifdef FEATURE_LOOP
-        fprintf(stderr, 
+        fprintf(stderr,
           "    -loop\tloops through background images after initial display\n"
           "\t\t  is complete (depends on -bgpat)\n"
           "    sec \tseconds to display each background image (default = 2)\n");
 #endif
-        fprintf(stderr, 
+        fprintf(stderr,
           "    dur \tduration in microseconds to wait after displaying each\n"
           "\t\t  row (for demo purposes)\n"
           "    -timing\tenables delay for every block read, to simulate modem\n"
diff --git a/contrib/pngminus/png2pnm.c b/contrib/pngminus/png2pnm.c
index 326f144..b1b9fd3 100644
--- a/contrib/pngminus/png2pnm.c
+++ b/contrib/pngminus/png2pnm.c
@@ -403,7 +403,7 @@
             if (bit_depth == 16){
 	      dep_16 = (long) *pix_ptr++;
               fprintf (alpha_file, "%ld ", (dep_16 << 8) + (long) *pix_ptr++);
-	    }  
+	    }
             else
               fprintf (alpha_file, "%ld ", (long) *pix_ptr++);
         }
diff --git a/contrib/visupng/PngFile.c b/contrib/visupng/PngFile.c
index db0219e..e741319 100644
--- a/contrib/visupng/PngFile.c
+++ b/contrib/visupng/PngFile.c
@@ -152,29 +152,29 @@
 
     Try
     {
-        
+
         // initialize the png structure
-        
+
 #ifdef PNG_STDIO_SUPPORTED
         png_init_io(png_ptr, pfFile);
 #else
         png_set_read_fn(png_ptr, (png_voidp)pfFile, png_read_data);
 #endif
-        
+
         png_set_sig_bytes(png_ptr, 8);
-        
+
         // read all PNG info up to image data
-        
+
         png_read_info(png_ptr, info_ptr);
-        
+
         // get width, height, bit-depth and color-type
-        
+
         png_get_IHDR(png_ptr, info_ptr, piWidth, piHeight, &iBitDepth,
             &iColorType, NULL, NULL, NULL);
-        
+
         // expand images of all color-type and bit-depth to 3x8 bit RGB images
         // let the library process things like alpha, transparency, background
-        
+
         if (iBitDepth == 16)
             png_set_strip_16(png_ptr);
         if (iColorType == PNG_COLOR_TYPE_PALETTE)
@@ -186,7 +186,7 @@
         if (iColorType == PNG_COLOR_TYPE_GRAY ||
             iColorType == PNG_COLOR_TYPE_GRAY_ALPHA)
             png_set_gray_to_rgb(png_ptr);
-        
+
         // set the background color to draw transparent and alpha images over.
         if (png_get_bKGD(png_ptr, info_ptr, &pBackground))
         {
@@ -199,30 +199,30 @@
         {
             pBkgColor = NULL;
         }
-        
+
         // if required set gamma conversion
         if (png_get_gAMA(png_ptr, info_ptr, &dGamma))
             png_set_gamma(png_ptr, (double) 2.2, dGamma);
-        
+
         // after the transformations have been registered update info_ptr data
-        
+
         png_read_update_info(png_ptr, info_ptr);
-        
+
         // get again width, height and the new bit-depth and color-type
-        
+
         png_get_IHDR(png_ptr, info_ptr, piWidth, piHeight, &iBitDepth,
             &iColorType, NULL, NULL, NULL);
-        
-        
+
+
         // row_bytes is the width x number of channels
-        
+
         ulRowBytes = png_get_rowbytes(png_ptr, info_ptr);
         ulChannels = png_get_channels(png_ptr, info_ptr);
-        
+
         *piChannels = ulChannels;
-        
+
         // now we can allocate memory to store the image
-        
+
         if (pbImageData)
         {
             free (pbImageData);
@@ -234,33 +234,33 @@
             png_error(png_ptr, "Visual PNG: out of memory");
         }
         *ppbImageData = pbImageData;
-        
+
         // and allocate memory for an array of row-pointers
-        
+
         if ((ppbRowPointers = (png_bytepp) malloc((*piHeight)
                             * sizeof(png_bytep))) == NULL)
         {
             png_error(png_ptr, "Visual PNG: out of memory");
         }
-        
+
         // set the individual row-pointers to point at the correct offsets
-        
+
         for (i = 0; i < (*piHeight); i++)
             ppbRowPointers[i] = pbImageData + i * ulRowBytes;
-        
+
         // now we can go ahead and just read the whole image
-        
+
         png_read_image(png_ptr, ppbRowPointers);
-        
+
         // read the additional chunks in the PNG file (not really needed)
-        
+
         png_read_end(png_ptr, NULL);
-        
+
         // and we're done
-        
+
         free (ppbRowPointers);
         ppbRowPointers = NULL;
-        
+
         // yepp, done
     }
 
@@ -269,7 +269,7 @@
         png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
 
         *ppbImageData = pbImageData = NULL;
-        
+
         if(ppbRowPointers)
             free (ppbRowPointers);
 
@@ -323,58 +323,58 @@
     Try
     {
         // initialize the png structure
-        
+
 #ifdef PNG_STDIO_SUPPORTED
         png_init_io(png_ptr, pfFile);
 #else
         png_set_write_fn(png_ptr, (png_voidp)pfFile, png_write_data, png_flush);
 #endif
-        
+
         // we're going to write a very simple 3x8 bit RGB image
-        
+
         png_set_IHDR(png_ptr, info_ptr, iWidth, iHeight, ciBitDepth,
             PNG_COLOR_TYPE_RGB, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_BASE,
             PNG_FILTER_TYPE_BASE);
-        
+
         // write the file header information
-        
+
         png_write_info(png_ptr, info_ptr);
-        
+
         // swap the BGR pixels in the DiData structure to RGB
-        
+
         png_set_bgr(png_ptr);
-        
+
         // row_bytes is the width x number of channels
-        
+
         ulRowBytes = iWidth * ciChannels;
-        
+
         // we can allocate memory for an array of row-pointers
-        
+
         if ((ppbRowPointers = (png_bytepp) malloc(iHeight * sizeof(png_bytep))) == NULL)
             Throw "Visualpng: Out of memory";
-        
+
         // set the individual row-pointers to point at the correct offsets
-        
+
         for (i = 0; i < iHeight; i++)
             ppbRowPointers[i] = pDiData + i * (((ulRowBytes + 3) >> 2) << 2);
-        
+
         // write out the entire image data in one call
-        
+
         png_write_image (png_ptr, ppbRowPointers);
-        
+
         // write the additional chunks to the PNG file (not really needed)
-        
+
         png_write_end(png_ptr, info_ptr);
-        
+
         // and we're done
-        
+
         free (ppbRowPointers);
         ppbRowPointers = NULL;
-        
+
         // clean up after the write, and free any memory allocated
-        
+
         png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
-        
+
         // yepp, done
     }
 
@@ -389,9 +389,9 @@
 
         return FALSE;
     }
-    
+
     fclose (pfFile);
-    
+
     return TRUE;
 }
 
diff --git a/contrib/visupng/PngFile.h b/contrib/visupng/PngFile.h
index dc6bbb4..c9d3836 100644
--- a/contrib/visupng/PngFile.h
+++ b/contrib/visupng/PngFile.h
@@ -17,7 +17,7 @@
 BOOL PngFileOpenDlg (HWND hwnd, PTSTR pstrFileName, PTSTR pstrTitleName) ;
 BOOL PngFileSaveDlg (HWND hwnd, PTSTR pstrFileName, PTSTR pstrTitleName) ;
 
-BOOL PngLoadImage (PTSTR pstrFileName, png_byte **ppbImageData, 
+BOOL PngLoadImage (PTSTR pstrFileName, png_byte **ppbImageData,
                    int *piWidth, int *piHeight, int *piChannels, png_color *pBkgColor);
 BOOL PngSaveImage (PTSTR pstrFileName, png_byte *pDiData,
                    int iWidth, int iHeight, png_color BkgColor);
diff --git a/contrib/visupng/VisualPng.c b/contrib/visupng/VisualPng.c
index 2018999..cb8ad7f 100644
--- a/contrib/visupng/VisualPng.c
+++ b/contrib/visupng/VisualPng.c
@@ -302,23 +302,23 @@
             {
                 if (strcmp (szImgPathName, "") == 0)
                     return 0;
-                
+
                 // load the image from file
-                
+
                 if (!LoadImageFile (hwnd, szImgPathName, &pbImage,
                         &cxImgSize, &cyImgSize, &cImgChannels, &bkgColor))
                     return 0;
-                
+
                 // invalidate the client area for later update
-                
+
                 InvalidateRect (hwnd, NULL, TRUE);
-                
+
                 // display the PNG into the DIBitmap
-                
+
                 DisplayImage (hwnd, &pDib, &pDiData, cxWinSize, cyWinSize,
                     pbImage, cxImgSize, cyImgSize, cImgChannels, bStretched);
             }
-            
+
             return 0;
 
         case IDM_FILE_PREVIOUS:
@@ -328,22 +328,22 @@
             if (SearchPngList (pPngFileList, iPngFileCount, &iPngFileIndex,
                 szImgPathName, NULL))
             {
-                
+
                 if (strcmp (szImgPathName, "") == 0)
                     return 0;
-                
+
                 // load the image from file
-                
+
                 if (!LoadImageFile (hwnd, szImgPathName, &pbImage, &cxImgSize,
                     &cyImgSize, &cImgChannels, &bkgColor))
                     return 0;
-                
+
                 // invalidate the client area for later update
-                
+
                 InvalidateRect (hwnd, NULL, TRUE);
-                
+
                 // display the PNG into the DIBitmap
-                
+
                 DisplayImage (hwnd, &pDib, &pDiData, cxWinSize, cyWinSize,
                     pbImage, cxImgSize, cyImgSize, cImgChannels, bStretched);
             }
@@ -619,29 +619,29 @@
     if (FileCount > 0)
     {
         // get previous entry
-        
+
         if (pstrPrevName != NULL)
         {
             if (*pFileIndex > 0)
                 *pFileIndex -= 1;
             else
                 *pFileIndex = FileCount - 1;
-            
+
             strcpy (pstrPrevName, pFileList + (*pFileIndex * MAX_PATH));
         }
-        
+
         // get next entry
-        
+
         if (pstrNextName != NULL)
         {
             if (*pFileIndex < FileCount - 1)
                 *pFileIndex += 1;
             else
                 *pFileIndex = 0;
-            
+
             strcpy (pstrNextName, pFileList + (*pFileIndex * MAX_PATH));
         }
-        
+
         return TRUE;
     }
     else
diff --git a/contrib/visupng/resource.h b/contrib/visupng/resource.h
index 611dd03..b62176d 100644
--- a/contrib/visupng/resource.h
+++ b/contrib/visupng/resource.h
@@ -12,7 +12,7 @@
 #define IDM_HELP_ABOUT                  40008
 
 // Next default values for new objects
-// 
+//
 #ifdef APSTUDIO_INVOKED
 #ifndef APSTUDIO_READONLY_SYMBOLS
 #define _APS_NEXT_RESOURCE_VALUE        113
diff --git a/libpng-1.4.18beta02.txt b/libpng-1.4.18rc01.txt
similarity index 99%
rename from libpng-1.4.18beta02.txt
rename to libpng-1.4.18rc01.txt
index dad2881..06cb68e 100644
--- a/libpng-1.4.18beta02.txt
+++ b/libpng-1.4.18rc01.txt
@@ -1,6 +1,6 @@
 libpng.txt - A description on how to use and modify libpng
 
- libpng version 1.4.18beta02 - November 23, 2015
+ libpng version 1.4.18rc01 - November 26, 2015
  Updated and distributed by Glenn Randers-Pehrson
  <glennrp at users.sourceforge.net>
  Copyright (c) 1998-2014 Glenn Randers-Pehrson
@@ -11,7 +11,7 @@
 
  Based on:
 
- libpng versions 0.97, January 1998, through 1.4.18beta02 - November 23, 2015
+ libpng versions 0.97, January 1998, through 1.4.18rc01 - November 26, 2015
  Updated and distributed by Glenn Randers-Pehrson
  Copyright (c) 1998-2014 Glenn Randers-Pehrson
 
@@ -907,7 +907,7 @@
 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.4.18beta02, not all possible expansions are supported.
+As of libpng version 1.4.18rc01, 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
@@ -3293,7 +3293,7 @@
 an official declaration.
 
 This is your unofficial assurance that libpng from version 0.71 and
-upward through 1.4.18beta02 are Y2K compliant.  It is my belief that earlier
+upward through 1.4.18rc01 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
diff --git a/libpng.3 b/libpng.3
index b8b7730..8ff14d7 100644
--- a/libpng.3
+++ b/libpng.3
@@ -1,6 +1,6 @@
-.TH LIBPNG 3 "November 23, 2015"
+.TH LIBPNG 3 "November 26, 2015"
 .SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.4.18beta02
+libpng \- Portable Network Graphics (PNG) Reference Library 1.4.18rc01
 .SH SYNOPSIS
 \fB
 #include <png.h>\fP
@@ -442,7 +442,7 @@
 .SH LIBPNG.TXT
 libpng.txt - A description on how to use and modify libpng
 
- libpng version 1.4.18beta02 - November 23, 2015
+ libpng version 1.4.18rc01 - November 26, 2015
  Updated and distributed by Glenn Randers-Pehrson
  <glennrp at users.sourceforge.net>
  Copyright (c) 1998-2014 Glenn Randers-Pehrson
@@ -453,7 +453,7 @@
 
  Based on:
 
- libpng versions 0.97, January 1998, through 1.4.18beta02 - November 23, 2015
+ libpng versions 0.97, January 1998, through 1.4.18rc01 - November 26, 2015
  Updated and distributed by Glenn Randers-Pehrson
  Copyright (c) 1998-2014 Glenn Randers-Pehrson
 
@@ -1349,7 +1349,7 @@
 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.4.18beta02, not all possible expansions are supported.
+As of libpng version 1.4.18rc01, 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
@@ -3735,7 +3735,7 @@
 an official declaration.
 
 This is your unofficial assurance that libpng from version 0.71 and
-upward through 1.4.18beta02 are Y2K compliant.  It is my belief that earlier
+upward through 1.4.18rc01 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
@@ -3832,7 +3832,7 @@
  ...
  1.0.19                  10    10019  10.so.0.19[.0]
  ...
- 1.4.17                  14    10417  14.so.14.17[.0]
+ 1.4.18                  14    10418  14.so.14.18[.0]
 
 Henceforth the source version will match the shared-library minor
 and patch numbers; the shared-library major version number will be
@@ -3888,7 +3888,7 @@
 
 Thanks to Frank J. T. Wojcik for helping with the documentation.
 
-Libpng version 1.4.18beta02 - November 23, 2015:
+Libpng version 1.4.18rc01 - November 26, 2015:
 Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
 Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
 
@@ -3913,7 +3913,7 @@
 
 This code is released under the libpng license.
 
-libpng versions 1.0.7, July 1, 2000, through 1.4.18beta02, November 23, 2015, are
+libpng versions 1.0.7, July 1, 2000, through 1.4.18rc01, November 26, 2015, are
 Copyright (c) 2000-2002, 2004, 2006-2015 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
@@ -4010,7 +4010,7 @@
 
 Glenn Randers-Pehrson
 glennrp at users.sourceforge.net
-November 23, 2015
+November 26, 2015
 
 .\" end of man page
 
diff --git a/libpngpf.3 b/libpngpf.3
index 21dd5c0..e278a64 100644
--- a/libpngpf.3
+++ b/libpngpf.3
@@ -1,6 +1,6 @@
-.TH LIBPNGPF 3 "November 23, 2015"
+.TH LIBPNGPF 3 "November 26, 2015"
 .SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.4.18beta02
+libpng \- Portable Network Graphics (PNG) Reference Library 1.4.18rc01
 (private functions)
 .SH SYNOPSIS
 \fB#include <png.h>
diff --git a/png.5 b/png.5
index 5b3daab..1044a35 100644
--- a/png.5
+++ b/png.5
@@ -1,4 +1,4 @@
-.TH PNG 5 "November 23, 2015"
+.TH PNG 5 "November 26, 2015"
 .SH NAME
 png \- Portable Network Graphics (PNG) format
 .SH DESCRIPTION
diff --git a/png.c b/png.c
index 21965a0..21ac296 100644
--- a/png.c
+++ b/png.c
@@ -17,7 +17,7 @@
 #include "pngpriv.h"
 
 /* Generate a compiler error if there is an old png.h in the search path. */
-typedef version_1_4_18beta02 Your_png_h_is_not_version_1_4_18beta02;
+typedef version_1_4_18rc01 Your_png_h_is_not_version_1_4_18rc01;
 
 /* Tells libpng that we have already handled the first "num_bytes" bytes
  * of the PNG file signature.  If the PNG data is embedded into another
@@ -558,13 +558,13 @@
 #else
 #ifdef __STDC__
    return ((png_charp) PNG_STRING_NEWLINE \
-     "libpng version 1.4.18beta02 - November 23, 2015" PNG_STRING_NEWLINE \
+     "libpng version 1.4.18rc01 - November 26, 2015" PNG_STRING_NEWLINE \
      "Copyright (c) 1998-2015 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.4.18beta02 - November 23, 2015\
+      return ((png_charp) "libpng version 1.4.18rc01 - November 26, 2015\
       Copyright (c) 1998-2015 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 744b064..18eaa8d 100644
--- a/png.h
+++ b/png.h
@@ -1,7 +1,7 @@
 
 /* png.h - header file for PNG reference library
  *
- * libpng version 1.4.18beta02, November 23, 2015
+ * libpng version 1.4.18rc01, November 26, 2015
  *
  * Copyright (c) 1998-2015 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -12,7 +12,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.4.18beta02, November 23, 2015: Glenn
+ *  libpng versions 0.97, January 1998, through 1.4.18rc01, November 26, 2015: Glenn
  *  See also "Contributing Authors", below.
  */
 
@@ -24,7 +24,7 @@
  *
  * This code is released under the libpng license.
  *
- * libpng versions 1.0.7, July 1, 2000, through 1.4.18beta02, November 23, 2015, are
+ * libpng versions 1.0.7, July 1, 2000, through 1.4.18rc01, November 26, 2015, are
  * Copyright (c) 2000-2002, 2004, 2006-2015 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
@@ -179,7 +179,7 @@
  *    ...
  *    1.0.19                  10    10019  10.so.0.19[.0]
  *    ...
- *    1.4.17                  14    10417  14.so.14.17[.0]
+ *    1.4.18                  14    10418  14.so.14.18[.0]
  *
  *    Henceforth the source version will match the shared-library major
  *    and minor numbers; the shared-library major version number will be
@@ -207,13 +207,13 @@
  * Y2K compliance in libpng:
  * =========================
  *
- *    November 23, 2015
+ *    November 26, 2015
  *
  *    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.4.18beta02 are Y2K compliant.  It is my belief that earlier
+ *    upward through 1.4.18rc01 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
@@ -269,9 +269,9 @@
  */
 
 /* Version information for png.h - this should match the version in png.c */
-#define PNG_LIBPNG_VER_STRING "1.4.18beta02"
+#define PNG_LIBPNG_VER_STRING "1.4.18rc01"
 #define PNG_HEADER_VERSION_STRING \
-   " libpng version 1.4.18beta02 - November 23, 2015\n"
+   " libpng version 1.4.18rc01 - November 26, 2015\n"
 
 #define PNG_LIBPNG_VER_SONUM   14
 #define PNG_LIBPNG_VER_DLLNUM  14
@@ -284,7 +284,7 @@
  * PNG_LIBPNG_VER_STRING, omitting any leading zero:
  */
 
-#define PNG_LIBPNG_VER_BUILD  02
+#define PNG_LIBPNG_VER_BUILD  01
 
 /* Release Status */
 #define PNG_LIBPNG_BUILD_ALPHA    1
@@ -301,7 +301,7 @@
 #define PNG_LIBPNG_BUILD_SPECIAL 32 /* Cannot be OR'ed with
                                        PNG_LIBPNG_BUILD_PRIVATE */
 
-#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_BETA
+#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_RC
 
 /* Careful here.  At one time, Guy wanted to use 082, but that would be octal.
  * We must not include leading zeros.
@@ -1378,7 +1378,7 @@
 /* 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_4_18beta02;
+typedef png_structp version_1_4_18rc01;
 
 typedef png_struct FAR * FAR * png_structpp;
 
diff --git a/pngconf.h b/pngconf.h
index d4cc663..63af8a5 100644
--- a/pngconf.h
+++ b/pngconf.h
@@ -1,7 +1,7 @@
 
 /* pngconf.h - machine configurable file for libpng
  *
- * libpng version 1.4.18beta02, November 23, 2015
+ * libpng version 1.4.18rc01, November 26, 2015
  *
  * Copyright (c) 1998-2015 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngpriv.h b/pngpriv.h
index bde19a4..7c8ea5f 100644
--- a/pngpriv.h
+++ b/pngpriv.h
@@ -1,7 +1,7 @@
 
 /* pngpriv.h - private declarations for use inside libpng
  *
- * libpng version 1.4.18beta02 - November 23, 2015
+ * libpng version 1.4.18rc01 - November 26, 2015
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2014 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngrtran.c b/pngrtran.c
index cc05863..85d2134 100644
--- a/pngrtran.c
+++ b/pngrtran.c
@@ -1726,7 +1726,7 @@
       switch (row_info->bit_depth)
       {
          default:
-            break; 
+            break;
 
          case 2:
          {
diff --git a/pngrutil.c b/pngrutil.c
index 99728bd..826775a 100644
--- a/pngrutil.c
+++ b/pngrutil.c
@@ -1,7 +1,7 @@
 
 /* pngrutil.c - utilities to read a PNG file
  *
- * Last changed in libpng 1.4.18 [November 23, 2015]
+ * Last changed in libpng 1.4.18 [November 26, 2015]
  * Copyright (c) 1998-2015 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/pngtest.c b/pngtest.c
index 6aac771..5db2d6e 100644
--- a/pngtest.c
+++ b/pngtest.c
@@ -1737,4 +1737,4 @@
 }
 
 /* Generate a compiler error if there is an old png.h in the search path. */
-typedef version_1_4_18beta02 your_png_h_is_not_version_1_4_18beta02;
+typedef version_1_4_18rc01 your_png_h_is_not_version_1_4_18rc01;
diff --git a/projects/vstudio/readme.txt b/projects/vstudio/readme.txt
index fbf4eb1..d1db0b0 100644
--- a/projects/vstudio/readme.txt
+++ b/projects/vstudio/readme.txt
@@ -1,7 +1,7 @@
 
 VisualStudio instructions
 
-libpng version 1.4.18beta02 - November 23, 2015
+libpng version 1.4.18rc01 - November 26, 2015
 
 Copyright (c) 1998-2010 Glenn Randers-Pehrson
 
diff --git a/projects/vstudio/zlib.props b/projects/vstudio/zlib.props
index 50d34e0..7969e03 100644
--- a/projects/vstudio/zlib.props
+++ b/projects/vstudio/zlib.props
@@ -2,7 +2,7 @@
 <!--
  * zlib.props - location of zlib source and build
  *
- * libpng version 1.4.18beta02 - November 23, 2015
+ * libpng version 1.4.18rc01 - November 26, 2015
  *
  * Copyright (c) 1998-2011 Glenn Randers-Pehrson
  *
diff --git a/scripts/README.txt b/scripts/README.txt
index 05ee496..044db07 100644
--- a/scripts/README.txt
+++ b/scripts/README.txt
@@ -1,8 +1,8 @@
 
-Makefiles for  libpng version 1.4.18beta02 - November 23, 2015
+Makefiles for  libpng version 1.4.18rc01 - November 26, 2015
 
  makefile.linux    =>  Linux/ELF makefile
-                       (gcc, creates libpng14.so.14.1.4.18beta02)
+                       (gcc, creates libpng14.so.14.1.4.18rc01)
  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 @@
  makefile.dec      =>  DEC Alpha UNIX makefile
  makefile.dj2      =>  DJGPP 2 makefile
  makefile.elf      =>  Linux/ELF makefile symbol versioning,
-                       (gcc, creates libpng14.so.14.1.4.18beta02)
+                       (gcc, creates libpng14.so.14.1.4.18rc01)
  makefile.freebsd  =>  FreeBSD makefile
  makefile.gcc      =>  Generic gcc makefile
  makefile.hpgcc    =>  HPUX makefile using gcc
@@ -36,12 +36,12 @@
  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 libpng14.so.14.1.4.18beta02)
+                       creates libpng14.so.14.1.4.18rc01)
  makefile.sgi      =>  Silicon Graphics IRIX makefile (cc, creates static lib)
  makefile.solaris  =>  Solaris 2.X makefile (gcc,
-                       creates libpng14.so.14.1.4.18beta02)
+                       creates libpng14.so.14.1.4.18rc01)
  makefile.so9      =>  Solaris 9 makefile (gcc,
-                       creates libpng14.so.14.1.4.18beta02)
+                       creates libpng14.so.14.1.4.18rc01)
  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 85f8364..7d737e9 100755
--- a/scripts/libpng-config-head.in
+++ b/scripts/libpng-config-head.in
@@ -11,7 +11,7 @@
 
 # Modeled after libxml-config.
 
-version=1.4.18beta02
+version=1.4.18rc01
 prefix=""
 libdir=""
 libs=""
diff --git a/scripts/libpng.pc.in b/scripts/libpng.pc.in
index bb089a3..473c8a4 100644
--- a/scripts/libpng.pc.in
+++ b/scripts/libpng.pc.in
@@ -5,6 +5,6 @@
 
 Name: libpng
 Description: Loads and saves PNG files
-Version: 1.4.18beta02
+Version: 1.4.18rc01
 Libs: -L${libdir} -lpng14
 Cflags: -I${includedir}
diff --git a/scripts/makefile.ne12bsd b/scripts/makefile.ne12bsd
index 7bb2d2a..316bf30 100644
--- a/scripts/makefile.ne12bsd
+++ b/scripts/makefile.ne12bsd
@@ -17,7 +17,7 @@
 
 LIB=	png14
 SHLIB_MAJOR=	0
-SHLIB_MINOR=	1.4.18beta02
+SHLIB_MINOR=	1.4.18rc01
 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 04d4cb0..e2e0c4a 100644
--- a/scripts/makefile.netbsd
+++ b/scripts/makefile.netbsd
@@ -17,7 +17,7 @@
 
 LIB=	png
 SHLIB_MAJOR=	3
-SHLIB_MINOR=	1.4.18beta02
+SHLIB_MINOR=	1.4.18rc01
 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.openbsd b/scripts/makefile.openbsd
index c355392..eb07683 100644
--- a/scripts/makefile.openbsd
+++ b/scripts/makefile.openbsd
@@ -11,7 +11,7 @@
 MANDIR= ${PREFIX}/man/cat
 
 SHLIB_MAJOR=	0
-SHLIB_MINOR=	1.4.18beta02
+SHLIB_MINOR=	1.4.18rc01
 
 LIB=	png
 SRCS=	png.c pngerror.c pngget.c pngmem.c pngpread.c \
diff --git a/scripts/png32ce.def b/scripts/png32ce.def
index f381a81..7d06b05 100644
--- a/scripts/png32ce.def
+++ b/scripts/png32ce.def
@@ -15,7 +15,7 @@
  png_get_int_32
 
 EXPORTS
-;Version 1.4.18beta02
+;Version 1.4.18rc01
   png_build_grayscale_palette  @1
 ;  png_check_sig        @2
   png_chunk_error      @3
diff --git a/scripts/pngos2.def b/scripts/pngos2.def
index f7bbfcf..3c3662f 100644
--- a/scripts/pngos2.def
+++ b/scripts/pngos2.def
@@ -2,7 +2,7 @@
 ; PNG.LIB module definition file for OS/2
 ;----------------------------------------
 
-; Version 1.4.18beta02
+; Version 1.4.18rc01
 
 LIBRARY		PNG
 DESCRIPTION	"PNG image compression library for OS/2"
diff --git a/scripts/pngwin.def b/scripts/pngwin.def
index 462216c..9f02ebe 100644
--- a/scripts/pngwin.def
+++ b/scripts/pngwin.def
@@ -5,7 +5,7 @@
 LIBRARY
 
 EXPORTS
-;Version 1.4.18beta02
+;Version 1.4.18rc01
   png_build_grayscale_palette
   png_chunk_error
   png_chunk_warning