diff --git a/ANNOUNCE b/ANNOUNCE
index cb9e5ae..2ac0c25 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,5 +1,5 @@
 
-Libpng 1.2.19beta31 - July 27, 2007
+Libpng 1.2.19rc1 - July 31, 2007
 
 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,32 +9,32 @@
 Source files with LF line endings (for Unix/Linux) and with a
 "configure" script
 
-   libpng-1.2.19beta31.tar.gz
-   libpng-1.2.19beta31.tar.bz2
+   libpng-1.2.19rc1.tar.gz
+   libpng-1.2.19rc1.tar.bz2
 
 Source files with LF line endings (for Unix/Linux) without the
 "configure" script
 
-   libpng-1.2.19beta31-no-config.tar.gz
-   libpng-1.2.19beta31-no-config.tar.bz2
+   libpng-1.2.19rc1-no-config.tar.gz
+   libpng-1.2.19rc1-no-config.tar.bz2
 
 Source files with CRLF line endings (for Windows), without the
 "configure" script
 
-   lp1219b31.zip
-   lp1219b31.tar.bz2
+   lp1219r01.zip
+   lp1219r01.tar.bz2
 
 Project files
 
-   libpng-1.2.19beta31-project-netware.zip
-   libpng-1.2.19beta31-project-wince.zip
+   libpng-1.2.19rc1-project-netware.zip
+   libpng-1.2.19rc1-project-wince.zip
 
 Other information:
 
-   libpng-1.2.19beta31-README.txt
-   libpng-1.2.19beta31-KNOWNBUGS.txt
-   libpng-1.2.19beta31-LICENSE.txt
-   libpng-1.2.19beta31-Y2K-compliance.txt
+   libpng-1.2.19rc1-README.txt
+   libpng-1.2.19rc1-KNOWNBUGS.txt
+   libpng-1.2.19rc1-LICENSE.txt
+   libpng-1.2.19rc1-Y2K-compliance.txt
 
 Changes since the last public release (1.2.18):
 
@@ -160,15 +160,20 @@
   Added png_warning() in pngrutil.c for short iCCP, iTXt, sPLT, or zTXT chunks.
   Revised pngtest.c so warnings are displayed regardless of PNG_NO_STDIO.
 
-version 1.2.19beta29 [July 20, 2007]
-  Fix typo in pnggccrd.c (%%eax should be %%ax in secondloop48)
-
-version 1.2.19beta30 [July 27, 2007]
+version 1.2.19beta30 [July 26, 2007]
   Revised pnggccrd.c
 
 version 1.2.19beta31 [July 27, 2007]
   Fix typos in pnggccrd.c
 
+version 1.2.19beta32 [July 31, 2007]
+  Disable PNG_MMX_CODE_SUPPORTED when PNG_ASSEMBLER_CODE_SUPPORTED is off.
+  Enable PNG_MMX_READ_FILTER_* by default (they were inadvertently disabled in
+    libpng-1.2.19beta23).
+  Fix some debugging statements in pnggccrd.c and pngrutil.c
+  Added information about disabling the MMX code in libpng documentation.
+
+
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 
 (subscription required; visit 
diff --git a/CHANGES b/CHANGES
index d6743c0..5f5f386 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1856,12 +1856,19 @@
 version 1.2.19beta29 [July 20, 2007]
   Fix typo in pnggccrd.c (%%eax should be %%ax in secondloop48)
 
-version 1.2.19beta30 [July 27, 2007]
+version 1.2.19beta30 [July 26, 2007]
   Revised pnggccrd.c
 
 version 1.2.19beta31 [July 27, 2007]
   Fix typos in pnggccrd.c
 
+version 1.0.27rc1 and 1.2.19rc1 [July 31, 2007]
+  Disable PNG_MMX_CODE_SUPPORTED when PNG_ASSEMBLER_CODE_SUPPORTED is off.
+  Enable PNG_MMX_READ_FILTER_* by default, except when gcc-3.x is being
+    used (they were inadvertently disabled in libpng-1.2.19beta23).
+  Fix some debugging statements in pnggccrd.c and pngrutil.c
+  Added information about disabling the MMX code in libpng documentation.
+
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 (subscription required; visit
 https://lists.sourceforge.net/lists/listinfo/png-mng-implement
diff --git a/INSTALL b/INSTALL
index 4c90173..79d13d1 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,5 @@
 
-Installing libpng version 1.2.19beta31 - July 27, 2007
+Installing libpng version 1.2.19rc1 - July 31, 2007
 
 On Unix/Linux and similar systems, you can simply type
 
@@ -44,7 +44,7 @@
 correspond to the version of zlib that's installed.
 
 You can rename the directories that you downloaded (they
-might be called "libpng-1.2.19beta31" or "lpng109" and "zlib-1.2.1"
+might be called "libpng-1.2.19rc1" or "lpng109" and "zlib-1.2.1"
 or "zlib121") so that you have directories called "zlib" and "libpng".
 
 Your directory structure should look like this:
@@ -101,14 +101,14 @@
  CMakeLists.txt    =>  "cmake" script
  makefile.std      =>  Generic UNIX makefile (cc, creates static libpng.a)
  makefile.elf      =>  Linux/ELF makefile symbol versioning,
-                       gcc, creates libpng12.so.0.1.2.19beta31)
+                       gcc, creates libpng12.so.0.1.2.19rc1)
  makefile.linux    =>  Linux/ELF makefile
-                       (gcc, creates libpng12.so.0.1.2.19beta31)
+                       (gcc, creates libpng12.so.0.1.2.19rc1)
  makefile.gcmmx    =>  Linux/ELF makefile
-                       (gcc, creates libpng12.so.0.1.2.19beta31,
+                       (gcc, creates libpng12.so.0.1.2.19rc1,
                        uses assembler code tuned for Intel MMX platform)
  makefile.nommx    =>  Linux/ELF makefile
-                       (gcc, creates libpng12.so.0.1.2.19beta31
+                       (gcc, creates libpng12.so.0.1.2.19rc1
                        does not use Intel MMX assembler code)
  makefile.gcc      =>  Generic makefile (gcc, creates static libpng.a)
  makefile.knr      =>  Archaic UNIX Makefile that converts files with
@@ -131,14 +131,14 @@
  makefile.openbsd  =>  OpenBSD makefile
  makefile.sgi      =>  Silicon Graphics IRIX makefile (cc, creates static lib)
  makefile.sggcc    =>  Silicon Graphics (gcc,
-                       creates libpng12.so.0.1.2.19beta31)
+                       creates libpng12.so.0.1.2.19rc1)
  makefile.sunos    =>  Sun makefile
  makefile.solaris  =>  Solaris 2.X makefile (gcc,
-                       creates libpng12.so.0.1.2.19beta31)
+                       creates libpng12.so.0.1.2.19rc1)
  makefile.solaris-x86 =>  Solaris/intelMMX 2.X makefile (gcc,
-                       creates libpng12.so.0.1.2.19beta31)
+                       creates libpng12.so.0.1.2.19rc1)
  makefile.so9      =>  Solaris 9 makefile (gcc,
-                       creates libpng12.so.0.1.2.19beta31)
+                       creates libpng12.so.0.1.2.19rc1)
  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/KNOWNBUG b/KNOWNBUG
index c94d0cb..eba66cf 100644
--- a/KNOWNBUG
+++ b/KNOWNBUG
@@ -1,5 +1,5 @@
 
-Known bugs in libpng version 1.2.19beta31
+Known bugs in libpng version 1.2.19rc1
 
 1. April 22, 2001: pnggccrd.c has been reported to crash on NetBSD when
    reading interlaced PNG files, when assembler code is enabled but running
@@ -19,3 +19,11 @@
    libpng12.so => libpng12.so.0.1.2.9betaN
    that are generated by the custom makefiles.
 
+4. June 28, 2007: Pnggccrd.c has been reported to be unreliable on
+   several 64-bit platforms running gcc-3.x.  Although it appears to
+   build properly, it does not always read files correctly.
+
+   STATUS:  Appears to be a bug in the 64-bit version of gcc-3.4.6.
+   Workarounds are to define PNG_NO_MMX_FILTER_UP|AVG|PAETH (as in
+   pngconf.h) or to upgrade gcc to a newer version.
+
diff --git a/LICENSE b/LICENSE
index b8c7e7e..91f08fd 100644
--- a/LICENSE
+++ b/LICENSE
@@ -8,7 +8,7 @@
 If you modify libpng you may insert additional notices immediately following
 this sentence.
 
-libpng versions 1.2.6, August 15, 2004, through 1.2.19beta31, July 27, 2007, are
+libpng versions 1.2.6, August 15, 2004, through 1.2.19rc1, July 31, 2007, are
 Copyright (c) 2004, 2006-2007 Glenn Randers-Pehrson, and are
 distributed according to the same disclaimer and license as libpng-1.2.5
 with the following individual added to the list of Contributing Authors
@@ -106,4 +106,4 @@
 
 Glenn Randers-Pehrson
 glennrp at users.sourceforge.net
-July 27, 2007
+July 31, 2007
diff --git a/README b/README
index 2ed290f..de5a2f4 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README for libpng version 1.2.19beta31 - July 27, 2007 (shared library 12.0)
+README for libpng version 1.2.19rc1 - July 31, 2007 (shared library 12.0)
 See the note about version numbers near the top of png.h
 
 See INSTALL for instructions on how to install libpng.
@@ -190,11 +190,11 @@
        descrip.mms      =>  VMS makefile for MMS or MMK
        makefile.std     =>  Generic UNIX makefile (cc, creates static libpng.a)
        makefile.elf     =>  Linux/ELF makefile symbol versioning,
-                            gcc, creates libpng12.so.0.1.2.19beta31)
+                            gcc, creates libpng12.so.0.1.2.19rc1)
        makefile.linux   =>  Linux/ELF makefile
-                            (gcc, creates libpng12.so.0.1.2.19beta31)
+                            (gcc, creates libpng12.so.0.1.2.19rc1)
        makefile.gcmmx   =>  Linux/ELF makefile
-                            (gcc, creates libpng12.so.0.1.2.19beta31,
+                            (gcc, creates libpng12.so.0.1.2.19rc1,
                             uses assembler code tuned for Intel MMX platform)
        makefile.gcc     =>  Generic makefile (gcc, creates static libpng.a)
        makefile.knr     =>  Archaic UNIX Makefile that converts files with
@@ -216,12 +216,12 @@
        makefile.openbsd =>  OpenBSD makefile
        makefile.sgi     =>  Silicon Graphics IRIX (cc, creates static lib)
        makefile.sggcc   =>  Silicon Graphics
-                            (gcc, creates libpng12.so.0.1.2.19beta31)
+                            (gcc, creates libpng12.so.0.1.2.19rc1)
        makefile.sunos   =>  Sun makefile
        makefile.solaris =>  Solaris 2.X makefile
-                            (gcc, creates libpng12.so.0.1.2.19beta31)
+                            (gcc, creates libpng12.so.0.1.2.19rc1)
        makefile.so9     =>  Solaris 9 makefile
-                            (gcc, creates libpng12.so.0.1.2.19beta31)
+                            (gcc, creates libpng12.so.0.1.2.19rc1)
        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/Y2KINFO b/Y2KINFO
index f87ed46..7ac68e8 100644
--- a/Y2KINFO
+++ b/Y2KINFO
@@ -1,13 +1,13 @@
    Y2K compliance in libpng:
    =========================
 
-      July 27, 2007
+      July 31, 2007
 
       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.2.19beta31 are Y2K compliant.  It is my belief that earlier
+      upward through 1.2.19rc1 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
diff --git a/configure b/configure
index 2e4b11c..f7601d4 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.61 for libpng 1.2.19beta31.
+# Generated by GNU Autoconf 2.61 for libpng 1.2.19rc1.
 #
 # Report bugs to <png-mng-implement@lists.sourceforge.net>.
 #
@@ -728,8 +728,8 @@
 # Identity of this package.
 PACKAGE_NAME='libpng'
 PACKAGE_TARNAME='libpng'
-PACKAGE_VERSION='1.2.19beta31'
-PACKAGE_STRING='libpng 1.2.19beta31'
+PACKAGE_VERSION='1.2.19rc1'
+PACKAGE_STRING='libpng 1.2.19rc1'
 PACKAGE_BUGREPORT='png-mng-implement@lists.sourceforge.net'
 
 ac_unique_file="pngget.c"
@@ -1405,7 +1405,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.2.19beta31 to adapt to many kinds of systems.
+\`configure' configures libpng 1.2.19rc1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1475,7 +1475,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libpng 1.2.19beta31:";;
+     short | recursive ) echo "Configuration of libpng 1.2.19rc1:";;
    esac
   cat <<\_ACEOF
 
@@ -1585,7 +1585,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libpng configure 1.2.19beta31
+libpng configure 1.2.19rc1
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1599,7 +1599,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.2.19beta31, which was
+It was created by libpng $as_me 1.2.19rc1, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -2269,7 +2269,7 @@
 
 # Define the identity of the package.
  PACKAGE='libpng'
- VERSION='1.2.19beta31'
+ VERSION='1.2.19rc1'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2440,7 +2440,7 @@
 
 
 
-PNGLIB_VERSION=1.2.19beta31
+PNGLIB_VERSION=1.2.19rc1
 PNGLIB_MAJOR=1
 PNGLIB_MINOR=2
 PNGLIB_RELEASE=19
@@ -21282,7 +21282,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.2.19beta31, which was
+This file was extended by libpng $as_me 1.2.19rc1, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -21335,7 +21335,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-libpng config.status 1.2.19beta31
+libpng config.status 1.2.19rc1
 configured by $0, generated by GNU Autoconf 2.61,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
diff --git a/configure.ac b/configure.ac
index 5f8379f..00a8e0a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -18,12 +18,12 @@
 
 dnl Version number stuff here:
 
-AC_INIT([libpng], [1.2.19beta31], [png-mng-implement@lists.sourceforge.net])
+AC_INIT([libpng], [1.2.19rc1], [png-mng-implement@lists.sourceforge.net])
 AM_INIT_AUTOMAKE
 dnl stop configure from automagically running automake
 AM_MAINTAINER_MODE
 
-PNGLIB_VERSION=1.2.19beta31
+PNGLIB_VERSION=1.2.19rc1
 PNGLIB_MAJOR=1
 PNGLIB_MINOR=2
 PNGLIB_RELEASE=19
diff --git a/contrib/pngminim/decoder/pngusr.h b/contrib/pngminim/decoder/pngusr.h
index 80e5ebf..a15f1fb 100644
--- a/contrib/pngminim/decoder/pngusr.h
+++ b/contrib/pngminim/decoder/pngusr.h
@@ -13,7 +13,7 @@
 #define png_warning(s1,s2) ""
 #define png_chunk_warning(s1,s2) ""
 
-#define PNG_NO_MMX_CODE
+#define PNG_NO_ASSEMBLER_CODE
 #define PNG_NO_OPTIMIZED_CODE
 #define PNG_NO_READ_GAMMA
 #define PNG_NO_READ_BACKGROUND
diff --git a/libpng-1.2.19beta31.txt b/libpng-1.2.19rc1.txt
similarity index 98%
rename from libpng-1.2.19beta31.txt
rename to libpng-1.2.19rc1.txt
index dc4ae8c..6e45e96 100644
--- a/libpng-1.2.19beta31.txt
+++ b/libpng-1.2.19rc1.txt
@@ -1,6 +1,6 @@
 libpng.txt - A description on how to use and modify libpng
 
- libpng version 1.2.19beta31 - July 27, 2007
+ libpng version 1.2.19rc1 - July 31, 2007
  Updated and distributed by Glenn Randers-Pehrson
  <glennrp at users.sourceforge.net>
  Copyright (c) 1998-2007 Glenn Randers-Pehrson
@@ -2790,7 +2790,8 @@
 written and compiled.  It is also possible, of course, to enable only known,
 specific optimizations; for example:
 
-    #if defined(PNG_LIBPNG_VER) && (PNG_LIBPNG_VER >= 10200)
+    #if defined(PNG_LIBPNG_VER) && (PNG_LIBPNG_VER >= 10200) && \
+       defined(PNG_USE_PNGGCCRD) && defined(PNG_ASSEMBLER_CODE_SUPPORTED)
        flags = PNG_ASM_FLAG_MMX_READ_COMBINE_ROW  \
              | PNG_ASM_FLAG_MMX_READ_INTERLACE    \
              | PNG_ASM_FLAG_MMX_READ_FILTER_SUB   \
@@ -2845,6 +2846,52 @@
 of optimized features, see contrib/gregbook/readpng2.c in the libpng
 source-code distribution.
 
+It is also possible to disable or enable specific optimization features
+at compile time.  To disable them entirely, which may result in slower
+but smaller and less complex and troublesome code, define
+
+     PNG_NO_ASSEMBLER_CODE
+
+If you do this, then the run-time code for setting and querying flags
+described above, and the assembler code in pnggccrd.c or pngvcrd.c will
+not be built.
+
+If you have disabled the assembler code, you can also disable the
+optimized C code, to obtain even slower but smaller code, by defining
+
+     PNG_NO_OPTIMZED_CODE
+
+To disable only the MMX assembler code, define
+
+     PNG_NO_MMX_CODE
+
+There are two versions of the MMX code: one for gcc compilers and one for
+MSVC compilers.  Pngconf.h should automatically detect which you are
+using, and it will set either PNG_USE_PNGGCCRD or PNG_USE_PNGVCRD for you.
+
+Define one or more of the following to disable specific parts of the
+assembler code:
+
+     PNG_NO_MMX_COMBINE_ROW
+     PNG_NO_MMX_READ_INTERLACE
+     PNG_NO_MMX_READ_FILTER_ROW
+
+If the latter is not disabled, you can disable one or more of the
+individual filter types by defining
+
+     PNG_NO_MMX_FILTER_SUB
+     PNG_NO_MMX_FILTER_UP
+     PNG_NO_MMX_FILTER_AVG
+     PNG_NO_MMX_FILTER_PAETH
+
+By default, libpng only enables the "sub" filter when gcc-3.x is used
+because experiments show that gcc-3.x produces bad code for the others.
+
+When you disable various MMX features, libpng will still be able to decode
+files with those features.  It will fall back upon the optimized C code
+or the unoptimized C code to decode them.
+
+
 VII.  MNG support
 
 The MNG specification (available at http://www.libpng.org/pub/mng) allows
@@ -2921,13 +2968,13 @@
 
 IX. Y2K Compliance in libpng
 
-July 27, 2007
+July 31, 2007
 
 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.2.19beta31 are Y2K compliant.  It is my belief that earlier
+upward through 1.2.19rc1 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 e06a66e..756417d 100644
--- a/libpng.3
+++ b/libpng.3
@@ -1,6 +1,6 @@
-.TH LIBPNG 3 "July 27, 2007"
+.TH LIBPNG 3 "July 31, 2007"
 .SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.2.19beta31
+libpng \- Portable Network Graphics (PNG) Reference Library 1.2.19rc1
 .SH SYNOPSIS
 \fB
 #include <png.h>\fP
@@ -410,7 +410,7 @@
 .SH LIBPNG.TXT
 libpng.txt - A description on how to use and modify libpng
 
- libpng version 1.2.19beta31 - July 27, 2007
+ libpng version 1.2.19rc1 - July 31, 2007
  Updated and distributed by Glenn Randers-Pehrson
  <glennrp at users.sourceforge.net>
  Copyright (c) 1998-2007 Glenn Randers-Pehrson
@@ -3200,7 +3200,8 @@
 written and compiled.  It is also possible, of course, to enable only known,
 specific optimizations; for example:
 
-    #if defined(PNG_LIBPNG_VER) && (PNG_LIBPNG_VER >= 10200)
+    #if defined(PNG_LIBPNG_VER) && (PNG_LIBPNG_VER >= 10200) && \
+       defined(PNG_USE_PNGGCCRD) && defined(PNG_ASSEMBLER_CODE_SUPPORTED)
        flags = PNG_ASM_FLAG_MMX_READ_COMBINE_ROW  \
              | PNG_ASM_FLAG_MMX_READ_INTERLACE    \
              | PNG_ASM_FLAG_MMX_READ_FILTER_SUB   \
@@ -3255,6 +3256,52 @@
 of optimized features, see contrib/gregbook/readpng2.c in the libpng
 source-code distribution.
 
+It is also possible to disable or enable specific optimization features
+at compile time.  To disable them entirely, which may result in slower
+but smaller and less complex and troublesome code, define
+
+     PNG_NO_ASSEMBLER_CODE
+
+If you do this, then the run-time code for setting and querying flags
+described above, and the assembler code in pnggccrd.c or pngvcrd.c will
+not be built.
+
+If you have disabled the assembler code, you can also disable the
+optimized C code, to obtain even slower but smaller code, by defining
+
+     PNG_NO_OPTIMZED_CODE
+
+To disable only the MMX assembler code, define
+
+     PNG_NO_MMX_CODE
+
+There are two versions of the MMX code: one for gcc compilers and one for
+MSVC compilers.  Pngconf.h should automatically detect which you are
+using, and it will set either PNG_USE_PNGGCCRD or PNG_USE_PNGVCRD for you.
+
+Define one or more of the following to disable specific parts of the
+assembler code:
+
+     PNG_NO_MMX_COMBINE_ROW
+     PNG_NO_MMX_READ_INTERLACE
+     PNG_NO_MMX_READ_FILTER_ROW
+
+If the latter is not disabled, you can disable one or more of the
+individual filter types by defining
+
+     PNG_NO_MMX_FILTER_SUB
+     PNG_NO_MMX_FILTER_UP
+     PNG_NO_MMX_FILTER_AVG
+     PNG_NO_MMX_FILTER_PAETH
+
+By default, libpng only enables the "sub" filter when gcc-3.x is used
+because experiments show that gcc-3.x produces bad code for the others.
+
+When you disable various MMX features, libpng will still be able to decode
+files with those features.  It will fall back upon the optimized C code
+or the unoptimized C code to decode them.
+
+
 .SH VII.  MNG support
 
 The MNG specification (available at http://www.libpng.org/pub/mng) allows
@@ -3331,13 +3378,13 @@
 
 .SH IX. Y2K Compliance in libpng
 
-July 27, 2007
+July 31, 2007
 
 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.2.19beta31 are Y2K compliant.  It is my belief that earlier
+upward through 1.2.19rc1 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
@@ -3527,6 +3574,8 @@
  1.0.26              10    10026  10.so.0.26[.0]
  1.2.18              13    10218  12.so.0.18[.0]
  1.2.19beta1-31      13    10219  12.so.0.19[.0]
+ 1.0.27rc1           10    10027  10.so.0.27[.0]
+ 1.2.19rc1           13    10219  12.so.0.19[.0]
 
 Henceforth the source version will match the shared-library minor
 and patch numbers; the shared-library major version number will be
@@ -3582,7 +3631,7 @@
 
 Thanks to Frank J. T. Wojcik for helping with the documentation.
 
-Libpng version 1.2.19beta31 - July 27, 2007:
+Libpng version 1.2.19rc1 - July 31, 2007:
 Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
 Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
 
@@ -3603,7 +3652,7 @@
 If you modify libpng you may insert additional notices immediately following
 this sentence.
 
-libpng versions 1.2.6, August 15, 2004, through 1.2.19beta31, July 27, 2007, are
+libpng versions 1.2.6, August 15, 2004, through 1.2.19rc1, July 31, 2007, are
 Copyright (c) 2004,2006-2007 Glenn Randers-Pehrson, and are
 distributed according to the same disclaimer and license as libpng-1.2.5
 with the following individual added to the list of Contributing Authors
@@ -3702,7 +3751,7 @@
 
 Glenn Randers-Pehrson
 glennrp at users.sourceforge.net
-July 27, 2007
+July 31, 2007
 
 .\" end of man page
 
diff --git a/libpngpf.3 b/libpngpf.3
index 3c35a52..d9b1276 100644
--- a/libpngpf.3
+++ b/libpngpf.3
@@ -1,6 +1,6 @@
-.TH LIBPNGPF 3 "July 27, 2007"
+.TH LIBPNGPF 3 "July 31, 2007"
 .SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.2.19beta31
+libpng \- Portable Network Graphics (PNG) Reference Library 1.2.19rc1
 (private functions)
 .SH SYNOPSIS
 \fB#include <png.h>\fP
diff --git a/png.5 b/png.5
index 2f71c9f..c851d14 100644
--- a/png.5
+++ b/png.5
@@ -1,4 +1,4 @@
-.TH PNG 5 "July 27, 2007"
+.TH PNG 5 "July 31, 2007"
 .SH NAME
 png \- Portable Network Graphics (PNG) format
 .SH DESCRIPTION
diff --git a/png.c b/png.c
index dd118bc..e4a8c00 100644
--- a/png.c
+++ b/png.c
@@ -1,7 +1,7 @@
 
 /* png.c - location for general purpose libpng functions
  *
- * Last changed in libpng 1.2.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -13,7 +13,7 @@
 #include "png.h"
 
 /* Generate a compiler error if there is an old png.h in the search path. */
-typedef version_1_2_19beta31 Your_png_h_is_not_version_1_2_19beta31;
+typedef version_1_2_19rc1 Your_png_h_is_not_version_1_2_19rc1;
 
 /* Version information for C files.  This had better match the version
  * string defined in png.h.  */
@@ -706,7 +706,7 @@
 png_get_copyright(png_structp png_ptr)
 {
    png_ptr = png_ptr;  /* silence compiler warning about unused png_ptr */
-   return ((png_charp) "\n libpng version 1.2.19beta31 - July 27, 2007\n\
+   return ((png_charp) "\n libpng version 1.2.19rc1 - July 31, 2007\n\
    Copyright (c) 1998-2007 Glenn Randers-Pehrson\n\
    Copyright (c) 1996-1997 Andreas Dilger\n\
    Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.\n");
diff --git a/png.h b/png.h
index fa32661..9e73dfd 100644
--- a/png.h
+++ b/png.h
@@ -1,7 +1,7 @@
 
 /* png.h - header file for PNG reference library
  *
- * libpng version 1.2.19beta31 - July 27, 2007
+ * libpng version 1.2.19rc1 - July 31, 2007
  * Copyright (c) 1998-2007 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.)
@@ -9,7 +9,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.2.19beta31 - July 27, 2007: Glenn
+ *  libpng versions 0.97, January 1998, through 1.2.19rc1 - July 31, 2007: Glenn
  *  See also "Contributing Authors", below.
  *
  * Note about libpng version numbers:
@@ -151,6 +151,8 @@
  *    1.0.26                  10    10026  10.so.0.26[.0]
  *    1.2.18                  13    10218  12.so.0.18[.0]
  *    1.2.19beta1-31          13    10219  12.so.0.19[.0]
+ *    1.0.27rc1               10    10027  10.so.0.27[.0]
+ *    1.2.19rc1               13    10219  12.so.0.19[.0]
  *
  *    Henceforth the source version will match the shared-library major
  *    and minor numbers; the shared-library major version number will be
@@ -180,7 +182,7 @@
  * If you modify libpng you may insert additional notices immediately following
  * this sentence.
  *
- * libpng versions 1.2.6, August 15, 2004, through 1.2.19beta31, July 27, 2007, are
+ * libpng versions 1.2.6, August 15, 2004, through 1.2.19rc1, July 31, 2007, are
  * Copyright (c) 2004, 2006-2007 Glenn Randers-Pehrson, and are
  * distributed according to the same disclaimer and license as libpng-1.2.5
  * with the following individual added to the list of Contributing Authors:
@@ -292,13 +294,13 @@
  * Y2K compliance in libpng:
  * =========================
  *
- *    July 27, 2007
+ *    July 31, 2007
  *
  *    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.2.19beta31 are Y2K compliant.  It is my belief that earlier
+ *    upward through 1.2.19rc1 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
@@ -354,9 +356,9 @@
  */
 
 /* Version information for png.h - this should match the version in png.c */
-#define PNG_LIBPNG_VER_STRING "1.2.19beta31"
+#define PNG_LIBPNG_VER_STRING "1.2.19rc1"
 #define PNG_HEADER_VERSION_STRING \
-   " libpng version 1.2.19beta31 - July 27, 2007\n"
+   " libpng version 1.2.19rc1 - July 31, 2007\n"
 
 #define PNG_LIBPNG_VER_SONUM   0
 #define PNG_LIBPNG_VER_DLLNUM  13
@@ -368,7 +370,7 @@
 /* This should match the numeric part of the final component of
  * PNG_LIBPNG_VER_STRING, omitting any leading zero: */
 
-#define PNG_LIBPNG_VER_BUILD  31
+#define PNG_LIBPNG_VER_BUILD  1
 
 /* Release Status */
 #define PNG_LIBPNG_BUILD_ALPHA    1
@@ -385,7 +387,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.
@@ -1407,7 +1409,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_2_19beta31;
+typedef png_structp version_1_2_19rc1;
 
 typedef png_struct FAR * FAR * png_structpp;
 
diff --git a/pngconf.h b/pngconf.h
index 07008b6..502b9c2 100644
--- a/pngconf.h
+++ b/pngconf.h
@@ -1,7 +1,7 @@
 
 /* pngconf.h - machine configurable file for libpng
  *
- * libpng version 1.2.19beta31 - July 27, 2007
+ * libpng version 1.2.19rc1 - July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -745,24 +745,24 @@
 #  endif
 
 #  if !defined(PNG_MMX_CODE_SUPPORTED) && !defined(PNG_NO_MMX_CODE)
-#      define PNG_MMX_CODE_SUPPORTED
+#    define PNG_MMX_CODE_SUPPORTED
 #  endif
 
-#  if !defined(PNG_USE_PNGVCRD) && !defined(PNG_NO_MMX_CODE) && \
+#  if !defined(PNG_USE_PNGVCRD) && defined(PNG_MMX_CODE_SUPPORTED) && \
      defined(_MSC_VER)
 #    define PNG_USE_PNGVCRD
 #  endif
 
-#  if !defined(PNG_USE_PNGGCCRD) && !defined(PNG_NO_MMX_CODE) && \
+#  if !defined(PNG_USE_PNGGCCRD) && defined(PNG_MMX_CODE_SUPPORTED) && \
      !defined(PNG_USE_PNGVCRD)
 #    define PNG_USE_PNGGCCRD
+     /* If you are sure that you don't need thread safety and you are compiling
+        with PNG_USE_PNGCCRD for an MMX application, you can define this for
+        faster execution.  See pnggccrd.c.
+#    define PNG_THREAD_UNSAFE_OK
+     */
 #  endif
 
-/* If you are sure that you don't need thread safety and you are compiling
-   with PNG_USE_PNGCCRD for an MMX application, you can define this for
-   faster execution.  See pnggccrd.c.
-#define PNG_THREAD_UNSAFE_OK
-*/
 #endif
 
 #if !defined(PNG_1_0_X)
@@ -1474,24 +1474,11 @@
 /* Prior to libpng-1.0.9, this block was in pngasmrd.h */
 #if defined(PNG_INTERNAL)
 
-/* These are the default thresholds before the MMX code kicks in; if either
- * rowbytes or bitdepth is below the threshold, plain C code is used.  These
- * can be overridden at runtime via the png_set_mmx_thresholds() call in
- * libpng 1.2.0 and later.  The values below were chosen by Intel.
- */
-
-#ifndef PNG_MMX_ROWBYTES_THRESHOLD_DEFAULT
-#  define PNG_MMX_ROWBYTES_THRESHOLD_DEFAULT  128  /*  >=  */
-#endif
-#ifndef PNG_MMX_BITDEPTH_THRESHOLD_DEFAULT
-#  define PNG_MMX_BITDEPTH_THRESHOLD_DEFAULT  9    /*  >=  */   
-#endif
-
-/* Set this in the makefile for VC++ on Pentium, not here. */
-/* Platform must be Pentium.  Makefile must assemble and load pngvcrd.c .
- * MMX will be detected at run time and used if present.
- */
-#ifdef PNG_USE_PNGVCRD
+#if defined(PNG_USE_PNGGCCRD) || defined(PNG_USE_PNGVCRD)
+  /* Platform must be Pentium.  Makefile must assemble and load
+   * pnggccrd.c or  pngvcrd.c. MMX will be detected at run time and
+   * used if present.
+   */
 #  ifndef PNG_NO_MMX_COMBINE_ROW
 #    define PNG_HAVE_MMX_COMBINE_ROW
 #  endif
@@ -1500,25 +1487,35 @@
 #  endif
 #  ifndef PNG_NO_MMX_READ_FILTER_ROW
 #    define PNG_HAVE_MMX_READ_FILTER_ROW
+#    ifndef PNG_NO_MMX_FILTER_SUB
+#      define PNG_MMX_READ_FILTER_SUB_SUPPORTED
+#    endif
+#    if !(defined(__GNUC__) && defined(__x86_64__) && (__GNUC__ < 4))
+       /* work around 64-bit gcc compiler bugs in gcc-3.x */
+#      ifndef PNG_NO_MMX_FILTER_UP
+#        define PNG_MMX_READ_FILTER_UP_SUPPORTED
+#      endif
+#      ifndef PNG_NO_MMX_FILTER_AVG
+#        define PNG_MMX_READ_FILTER_AVG_SUPPORTED
+#      endif
+#      ifndef PNG_NO_MMX_FILTER_PAETH
+#        define PNG_MMX_READ_FILTER_PAETH_SUPPORTED
+#      endif
+#    endif /* !((__x86_64__) && (GNUC < 4)) */
 #  endif
-#endif
-
-/* Set this in the makefile for gcc/as on Pentium, not here. */
-/* Platform must be Pentium.  Makefile must assemble and load pnggccrd.c .
- * MMX will be detected at run time and used if present.
- */
-#ifdef PNG_USE_PNGGCCRD
-#  ifndef PNG_NO_MMX_COMBINE_ROW
-#    define PNG_HAVE_MMX_COMBINE_ROW
+  /* These are the default thresholds before the MMX code kicks in; if either
+   * rowbytes or bitdepth is below the threshold, plain C code is used.  These
+   * can be overridden at runtime via the png_set_mmx_thresholds() call in
+   * libpng 1.2.0 and later.  The values below were chosen by Intel.
+   */
+#  ifndef PNG_MMX_ROWBYTES_THRESHOLD_DEFAULT
+#    define PNG_MMX_ROWBYTES_THRESHOLD_DEFAULT  128  /*  >=  */
 #  endif
-#  ifndef PNG_NO_MMX_READ_INTERLACE
-#    define PNG_HAVE_MMX_READ_INTERLACE
+#  ifndef PNG_MMX_BITDEPTH_THRESHOLD_DEFAULT
+#    define PNG_MMX_BITDEPTH_THRESHOLD_DEFAULT  9    /*  >=  */   
 #  endif
-#  ifndef PNG_NO_MMX_READ_FILTER_ROW
-#    define PNG_HAVE_MMX_READ_FILTER_ROW
-#  endif
-#endif
-/* - see pnggccrd.c for info about what is currently enabled */
+#endif /* PNG_USE_PNGGCCRD || PNG_USE_PNGVCRD */
+/* - see pngvcrd.c or pnggccrd.c for info about what is currently enabled */
 
 #endif /* PNG_INTERNAL */
 #endif /* PNG_READ_SUPPORTED */
diff --git a/pngerror.c b/pngerror.c
index c5f9b5f..b0b366b 100644
--- a/pngerror.c
+++ b/pngerror.c
@@ -1,7 +1,7 @@
 
 /* pngerror.c - stub functions for i/o and memory allocation
  *
- * Last changed in libpng 1.2.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pnggccrd.c b/pnggccrd.c
index e1829e9..a13e0a5 100644
--- a/pnggccrd.c
+++ b/pnggccrd.c
@@ -3,7 +3,7 @@
  *
  * For Intel/AMD x86 or x86-64 CPU (Pentium-MMX or later) and GNU C compiler.
  *
- * Last changed in libpng 1.2.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998 Intel Corporation
  * Copyright (c) 1999-2002,2007 Greg Roelofs
@@ -5789,12 +5789,12 @@
 #if !defined(PNG_1_0_X)
            ((png_ptr->asm_flags & PNG_ASM_FLAG_MMX_READ_FILTER_SUB) &&
             (row_info->pixel_depth >= png_ptr->mmx_bitdepth_threshold) &&
-            (row_info->rowbytes >= png_ptr->mmx_rowbytes_threshold))
+            (row_info->rowbytes >= png_ptr->mmx_rowbytes_threshold)) ? "MMX" : 
 #else
            _mmx_supported
 #endif
 #endif
-           ? "MMX" : "C");
+           "C");
          break;
 
       case 2:
@@ -5803,12 +5803,12 @@
 #if !defined(PNG_1_0_X)
            ((png_ptr->asm_flags & PNG_ASM_FLAG_MMX_READ_FILTER_UP) &&
             (row_info->pixel_depth >= png_ptr->mmx_bitdepth_threshold) &&
-            (row_info->rowbytes >= png_ptr->mmx_rowbytes_threshold))
+            (row_info->rowbytes >= png_ptr->mmx_rowbytes_threshold)) ? "MMX" :
 #else
            _mmx_supported
 #endif
 #endif
-           ? "MMX" : "C");
+           "C");
          break;
 
       case 3:
@@ -5817,12 +5817,12 @@
 #if !defined(PNG_1_0_X)
            ((png_ptr->asm_flags & PNG_ASM_FLAG_MMX_READ_FILTER_AVG) &&
             (row_info->pixel_depth >= png_ptr->mmx_bitdepth_threshold) &&
-            (row_info->rowbytes >= png_ptr->mmx_rowbytes_threshold))
+            (row_info->rowbytes >= png_ptr->mmx_rowbytes_threshold)) ? "MMX" : 
 #else
            _mmx_supported
 #endif
 #endif
-           ? "MMX" : "C");
+           "C");
          break;
 
       case 4:
diff --git a/pngpread.c b/pngpread.c
index bf0db49..2ef6212 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.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngread.c b/pngread.c
index e49349c..562414a 100644
--- a/pngread.c
+++ b/pngread.c
@@ -1,7 +1,7 @@
 
 /* pngread.c - read a PNG file
  *
- * Last changed in libpng 1.2.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngrtran.c b/pngrtran.c
index 9f07832..44049ec 100644
--- a/pngrtran.c
+++ b/pngrtran.c
@@ -1,7 +1,7 @@
 
 /* pngrtran.c - transforms the data in a row for PNG readers
  *
- * Last changed in libpng 1.2.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngrutil.c b/pngrutil.c
index 90a44e7..9e96632 100644
--- a/pngrutil.c
+++ b/pngrutil.c
@@ -1,7 +1,7 @@
 
 /* pngrutil.c - utilities to read a PNG file
  *
- * Last changed in libpng 1.2.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -3048,7 +3048,7 @@
                      png_memcpy(v, sptr, 4);
                      for (j = 0; j < png_pass_inc[pass]; j++)
                      {
-#if defined(PNG_DEBUG)
+#if defined(PNG_DEBUG) && defined(PNG_1_0_X)
                         if (dp < row || dp+3 > row+png_ptr->row_buf_size)
                         {
                            printf("dp out of bounds: row=%d, dp=%d, rp=%d\n",
@@ -4158,7 +4158,7 @@
 #endif
    png_ptr->big_row_buf = (png_bytep)png_malloc(png_ptr, row_bytes+64);
    png_ptr->row_buf = png_ptr->big_row_buf+32;
-#if defined(PNG_DEBUG) && defined(PNG_USE_PNGGCCRD)
+#if defined(PNG_DEBUG) && defined(PNG_USE_PNGGCCRD) && defined(PNG_1_0_X)
    png_ptr->row_buf_size = row_bytes;
 #endif
 
diff --git a/pngtest.c b/pngtest.c
index a3686bb..2dda18f 100644
--- a/pngtest.c
+++ b/pngtest.c
@@ -1548,4 +1548,4 @@
 }
 
 /* Generate a compiler error if there is an old png.h in the search path. */
-typedef version_1_2_19beta31 your_png_h_is_not_version_1_2_19beta31;
+typedef version_1_2_19rc1 your_png_h_is_not_version_1_2_19rc1;
diff --git a/pngvcrd.c b/pngvcrd.c
index 90dedb3..8845936 100644
--- a/pngvcrd.c
+++ b/pngvcrd.c
@@ -3,7 +3,7 @@
  *
  * For Intel x86 CPU and Microsoft Visual C++ compiler
  *
- * Last changed in libpng 1.2.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * Copyright (c) 1998, Intel Corporation
@@ -933,8 +933,8 @@
                   mov        ax,[esi+4]       // These 2 lines added 20070717
                   mov        [ebx+4],ax       // Glenn R-P
 skip48:
-                  add        esi,6
-                  add        ebx,6
+                  add        esi,6            // Changed 4 to 6 on these 2
+                  add        ebx,6            // lines.  Glenn R-P 20070717
 
                   dec        ecx
                   jnz        secondloop48
diff --git a/pngwutil.c b/pngwutil.c
index 99a758a..52f8c12 100644
--- a/pngwutil.c
+++ b/pngwutil.c
@@ -1,7 +1,7 @@
 
 /* pngwutil.c - utilities to write a PNG file
  *
- * Last changed in libpng 1.2.19 July 27, 2007
+ * Last changed in libpng 1.2.19 July 31, 2007
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2007 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
index d24e4cc..35c0767 100644
--- a/scripts/CMakeLists.txt
+++ b/scripts/CMakeLists.txt
@@ -175,7 +175,7 @@
 
 # SET UP LINKS
 set_target_properties(${PNG_LIB_NAME} PROPERTIES
-#    VERSION 0.${PNGLIB_RELEASE}.1.2.19beta31
+#    VERSION 0.${PNGLIB_RELEASE}.1.2.19rc1
      VERSION 0.${PNGLIB_RELEASE}.0
      SOVERSION 0
      CLEAN_DIRECT_OUTPUT 1)
diff --git a/scripts/libpng-config-head.in b/scripts/libpng-config-head.in
index 5fa8fb3..2b680fd 100755
--- a/scripts/libpng-config-head.in
+++ b/scripts/libpng-config-head.in
@@ -8,7 +8,7 @@
 
 # Modeled after libxml-config.
 
-version=1.2.19beta31
+version=1.2.19rc1
 prefix=""
 libdir=""
 libs=""
diff --git a/scripts/libpng.pc-configure.in b/scripts/libpng.pc-configure.in
index dcb7552..f0028a5 100644
--- a/scripts/libpng.pc-configure.in
+++ b/scripts/libpng.pc-configure.in
@@ -5,6 +5,6 @@
 
 Name: libpng
 Description: Loads and saves PNG files
-Version: 1.2.19beta31
+Version: 1.2.19rc1
 Libs: -L${libdir} -lpng12
 Cflags: -I${includedir} @LIBPNG_NO_MMX@
diff --git a/scripts/libpng.pc.in b/scripts/libpng.pc.in
index 20c6eda..6be21aa 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.2.19beta31
+Version: 1.2.19rc1
 Libs: -L${libdir} -lpng12
 Cflags: -I${includedir}
diff --git a/scripts/makefile.32sunu b/scripts/makefile.32sunu
index 0ddacb9..3d098ef 100644
--- a/scripts/makefile.32sunu
+++ b/scripts/makefile.32sunu
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME=libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.64sunu b/scripts/makefile.64sunu
index 0a03e51..7919f8a 100644
--- a/scripts/makefile.64sunu
+++ b/scripts/makefile.64sunu
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME=libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.aix b/scripts/makefile.aix
index 4d6d404..2389dba 100644
--- a/scripts/makefile.aix
+++ b/scripts/makefile.aix
@@ -20,7 +20,7 @@
 
 LIBNAME=libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 prefix=/usr/local
diff --git a/scripts/makefile.beos b/scripts/makefile.beos
index be9d327..51b7b45 100644
--- a/scripts/makefile.beos
+++ b/scripts/makefile.beos
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME=libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.cygwin b/scripts/makefile.cygwin
index 316e96e..e9dd381 100644
--- a/scripts/makefile.cygwin
+++ b/scripts/makefile.cygwin
@@ -77,7 +77,7 @@
 LIBNAME = libpng12
 PNGMAJ = 0
 CYGDLL = 12
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 SHAREDLIB=cygpng$(CYGDLL).dll
diff --git a/scripts/makefile.darwin b/scripts/makefile.darwin
index 91b8292..d8ae400 100644
--- a/scripts/makefile.darwin
+++ b/scripts/makefile.darwin
@@ -19,7 +19,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.dec b/scripts/makefile.dec
index 5f3d627..7b7cf21 100644
--- a/scripts/makefile.dec
+++ b/scripts/makefile.dec
@@ -5,7 +5,7 @@
 
 # Library name:
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 LIBNAME = libpng12
 
diff --git a/scripts/makefile.elf b/scripts/makefile.elf
index cb86125..8e266e1 100644
--- a/scripts/makefile.elf
+++ b/scripts/makefile.elf
@@ -12,7 +12,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx
index 13ee2b1..9d47e72 100644
--- a/scripts/makefile.gcmmx
+++ b/scripts/makefile.gcmmx
@@ -16,7 +16,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.hp64 b/scripts/makefile.hp64
index 342962e..801f516 100644
--- a/scripts/makefile.hp64
+++ b/scripts/makefile.hp64
@@ -18,7 +18,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.hpgcc b/scripts/makefile.hpgcc
index 47d04e0..f18ec98 100644
--- a/scripts/makefile.hpgcc
+++ b/scripts/makefile.hpgcc
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.hpux b/scripts/makefile.hpux
index c2128f7..16a923a 100644
--- a/scripts/makefile.hpux
+++ b/scripts/makefile.hpux
@@ -18,7 +18,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.linux b/scripts/makefile.linux
index d1c5e10..332ee2c 100644
--- a/scripts/makefile.linux
+++ b/scripts/makefile.linux
@@ -6,7 +6,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.mingw b/scripts/makefile.mingw
index f19fb4d..5038946 100644
--- a/scripts/makefile.mingw
+++ b/scripts/makefile.mingw
@@ -78,7 +78,7 @@
 LIBNAME = libpng12
 PNGMAJ = 0
 MINGDLL = 12
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 SHAREDLIB=libpng$(MINGDLL).dll
diff --git a/scripts/makefile.ne12bsd b/scripts/makefile.ne12bsd
index 5c7aaee..13af6a1 100644
--- a/scripts/makefile.ne12bsd
+++ b/scripts/makefile.ne12bsd
@@ -14,7 +14,7 @@
 
 LIB=	png12
 SHLIB_MAJOR=	0
-SHLIB_MINOR=	1.2.19beta31
+SHLIB_MINOR=	1.2.19rc1
 SRCS=	pnggccrd.c 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 1953a43..44f35e5 100644
--- a/scripts/makefile.netbsd
+++ b/scripts/makefile.netbsd
@@ -14,7 +14,7 @@
 
 LIB=	png
 SHLIB_MAJOR=	3
-SHLIB_MINOR=	1.2.19beta31
+SHLIB_MINOR=	1.2.19rc1
 SRCS=	pnggccrd.c 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 d35aaec..3e9c9bc 100644
--- a/scripts/makefile.nommx
+++ b/scripts/makefile.nommx
@@ -7,7 +7,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.openbsd b/scripts/makefile.openbsd
index 8c030d0..5da1cce 100644
--- a/scripts/makefile.openbsd
+++ b/scripts/makefile.openbsd
@@ -8,7 +8,7 @@
 MANDIR= ${PREFIX}/man/cat
 
 SHLIB_MAJOR=	0
-SHLIB_MINOR=	1.2.19beta31
+SHLIB_MINOR=	1.2.19rc1
 
 LIB=	png
 SRCS=	png.c pngerror.c pnggccrd.c pngget.c pngmem.c pngpread.c \
diff --git a/scripts/makefile.sco b/scripts/makefile.sco
index b0d35cd..07188be 100644
--- a/scripts/makefile.sco
+++ b/scripts/makefile.sco
@@ -9,7 +9,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.sggcc b/scripts/makefile.sggcc
index a653773..bf9a513 100644
--- a/scripts/makefile.sggcc
+++ b/scripts/makefile.sggcc
@@ -6,7 +6,7 @@
 # Library name:
 LIBNAME=libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.sgi b/scripts/makefile.sgi
index f679ec0..87ad862 100644
--- a/scripts/makefile.sgi
+++ b/scripts/makefile.sgi
@@ -6,7 +6,7 @@
 # Library name:
 LIBNAME=libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.so9 b/scripts/makefile.so9
index 5a2ab3b..b9a4996 100644
--- a/scripts/makefile.so9
+++ b/scripts/makefile.so9
@@ -8,7 +8,7 @@
 
 # Library name:
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 LIBNAME = libpng12
 
diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris
index 7ea93f5..777a17b 100644
--- a/scripts/makefile.solaris
+++ b/scripts/makefile.solaris
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/makefile.solaris-x86 b/scripts/makefile.solaris-x86
index 8bcfbbc..74ff449 100644
--- a/scripts/makefile.solaris-x86
+++ b/scripts/makefile.solaris-x86
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME = libpng12
 PNGMAJ = 0
-PNGMIN = 1.2.19beta31
+PNGMIN = 1.2.19rc1
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
diff --git a/scripts/pngos2.def b/scripts/pngos2.def
index 768819a..3b809a2 100644
--- a/scripts/pngos2.def
+++ b/scripts/pngos2.def
@@ -2,7 +2,7 @@
 ; PNG.LIB module definition file for OS/2
 ;----------------------------------------
 
-; Version 1.2.19beta31
+; Version 1.2.19rc1
 
 LIBRARY		PNG
 DESCRIPTION	"PNG image compression library for OS/2"
diff --git a/scripts/pngw32.def b/scripts/pngw32.def
index b438361..2c0b9b6 100644
--- a/scripts/pngw32.def
+++ b/scripts/pngw32.def
@@ -5,7 +5,7 @@
 LIBRARY
 
 EXPORTS
-;Version 1.2.19beta31
+;Version 1.2.19rc1
   png_build_grayscale_palette  @1
   png_check_sig        @2
   png_chunk_error      @3
