summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Randers-Pehrson <glennrp at users.sourceforge.net>2004-08-09 21:50:32 -0500
committerGlenn Randers-Pehrson <glennrp at users.sourceforge.net>2009-04-06 16:07:46 -0500
commitd029a75d4f7e99b08691ce1e4986178083850b2b (patch)
treea67078669598844d743e61ba0315241733cd0d9b
parentdff799ef891e99849450526e9e3f34b7edd96d19 (diff)
downloadlibpng-1.2.6rc3.tar.gz
Imported from libpng-1.2.6rc3.tarv1.2.6rc3
-rw-r--r--ANNOUNCE9
-rw-r--r--CHANGES14
-rw-r--r--INSTALL14
-rw-r--r--KNOWNBUG2
-rw-r--r--LICENSE7
-rw-r--r--README2
-rw-r--r--Y2KINFO4
-rwxr-xr-xconfigure4
-rw-r--r--libpng.339
-rw-r--r--libpng.txt22
-rw-r--r--libpngpf.34
-rw-r--r--png.52
-rw-r--r--png.c6
-rw-r--r--png.h50
-rw-r--r--pngasmrd.h2
-rw-r--r--pngconf.h2
-rw-r--r--pngerror.c2
-rw-r--r--pnggccrd.c13
-rw-r--r--pngget.c2
-rw-r--r--pngmem.c2
-rw-r--r--pngpread.c49
-rw-r--r--pngread.c6
-rw-r--r--pngrio.c2
-rw-r--r--pngrtran.c11
-rw-r--r--pngrutil.c38
-rw-r--r--pngset.c2
-rw-r--r--pngtest.c24
-rw-r--r--pngtrans.c2
-rw-r--r--pngvcrd.c2
-rw-r--r--pngwio.c2
-rw-r--r--pngwrite.c2
-rw-r--r--pngwtran.c2
-rw-r--r--pngwutil.c2
-rwxr-xr-xscripts/libpng-config-head.in2
-rw-r--r--scripts/libpng.pc.in2
-rw-r--r--scripts/makefile.32sunu2
-rw-r--r--scripts/makefile.64sunu2
-rw-r--r--scripts/makefile.aix2
-rw-r--r--scripts/makefile.beos2
-rw-r--r--scripts/makefile.cygwin2
-rw-r--r--scripts/makefile.darwin2
-rw-r--r--scripts/makefile.dec2
-rw-r--r--scripts/makefile.gcmmx2
-rw-r--r--scripts/makefile.hpgcc2
-rw-r--r--scripts/makefile.hpux2
-rw-r--r--scripts/makefile.linux2
-rw-r--r--scripts/makefile.ne12bsd2
-rw-r--r--scripts/makefile.netbsd2
-rw-r--r--scripts/makefile.openbsd2
-rw-r--r--scripts/makefile.sco2
-rw-r--r--scripts/makefile.sggcc2
-rw-r--r--scripts/makefile.sgi2
-rw-r--r--scripts/makefile.so92
-rw-r--r--scripts/makefile.solaris2
-rw-r--r--scripts/pngos2.def2
-rw-r--r--scripts/pngw32.def2
56 files changed, 225 insertions, 167 deletions
diff --git a/ANNOUNCE b/ANNOUNCE
index c2565ba1f..072023332 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,5 +1,5 @@
-Libpng 1.2.6rc2 - August 8, 2004
+Libpng 1.2.6rc3 - August 10, 2004
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.
@@ -108,6 +108,13 @@ version 1.2.6rc2 [August 8, 2004]
Changed "HANDLE_CHUNK_*" to "PNG_HANDLE_CHUNK_*" (Cosmin)
Added "-@/bin/rm -f $(DL)/$(LIBNAME).so.$(PNGMAJ)" to 15 *NIX makefiles.
Added code to update the row_info->colortype in png_do_read_filler() (MSB).
+version 1.2.6rc3 [August 10, 2004]
+ Eliminated use of "abs()" in testing cHRM and gAMA values, to avoid
+ trouble with some 64-bit compilers. Created PNG_OUT_OF_RANGE() macro.
+ Revised documentation of png_set_keep_unknown_chunks().
+ Check handle_as_unknown status in pngpread.c, as in pngread.c previously.
+ Restore "HANDLE_CHUNK_*" macros, but deprecated, for apps that use them.
+ Added "rim" definitions for CONST4 and CONST6 in pnggccrd.c
Send comments/corrections/commendations to
png-implement@ccrc.wustl.edu or to glennrp@users.sourceforge.net
diff --git a/CHANGES b/CHANGES
index 0e7929770..88193c4b7 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1269,7 +1269,6 @@ version 1.2.6rc1 [August 4, 2004]
Fixed some harmless bugs in png_handle_sBIT, etc, that would cause
duplicate chunk types to go undetected.
Fixed some timestamps in the -config version
- Fixed some timestamps in the -config version
Rearranged order of processing of color types in png_handle_tRNS().
Added ROWBYTES macro to calculate rowbytes without integer overflow.
Updated makefile.darwin and removed makefile.macosx from scripts directory.
@@ -1278,12 +1277,12 @@ version 1.2.6rc1 [August 4, 2004]
Revised use of PNG_SET_USER_LIMITS_SUPPORTED macro.
Fixed wrong cast of returns from png_get_user_width|height_max().
Changed some "keep the compiler happy" from empty statements to returns,
-version 1.2.6rc2 [August 8, 2004]
+version 1.2.6rc2 [August 7, 2004]
Revised makefile.darwin and makefile.solaris. Removed makefile.macosx.
Revised pngtest's png_debug_malloc() to use png_malloc() instead of
- png_malloc_default() which is not supposed to be exported.
+ png_malloc_default() which is not supposed to be exported.
Fixed off-by-one error in one of the conversions to PNG_ROWBYTES() in
- pngpread.c. Bug was introduced in 1.2.6rc1.
+ pngpread.c. Bug was introduced in 1.2.6rc1.
Fixed bug in RGB to RGBX transformation introduced in 1.2.6rc1.
Fixed old bug in RGB to Gray transformation.
Fixed problem with 64-bit compilers by casting arguments to abs()
@@ -1292,6 +1291,13 @@ version 1.2.6rc2 [August 8, 2004]
Changed "HANDLE_CHUNK_*" to "PNG_HANDLE_CHUNK_*" (Cosmin)
Added "-@/bin/rm -f $(DL)/$(LIBNAME).so.$(PNGMAJ)" to 15 *NIX makefiles.
Added code to update the row_info->colortype in png_do_read_filler() (MSB).
+version 1.2.6rc3 [August 10, 2004]
+ Eliminated use of "abs()" in testing cHRM and gAMA values, to avoid
+ trouble with some 64-bit compilers. Created PNG_OUT_OF_RANGE() macro.
+ Revised documentation of png_set_keep_unknown_chunks().
+ Check handle_as_unknown status in pngpread.c, as in pngread.c previously.
+ Moved "PNG_HANDLE_CHUNK_*" macros out of PNG_INTERNAL section of png.h
+ Added "rim" definitions for CONST4 and CONST6 in pnggccrd.c
Send comments/corrections/commendations to
png-implement@ccrc.wustl.edu or to glennrp@users.sourceforge.net
diff --git a/INSTALL b/INSTALL
index 54a88b545..c6bbf7dcd 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,5 @@
-Installing libpng version 1.2.6rc2 - August 8, 2004
+Installing libpng version 1.2.6rc3 - August 10, 2004
Before installing libpng, you must first install zlib. zlib
can usually be found wherever you got libpng. zlib can be
@@ -10,7 +10,7 @@ zlib.h and zconf.h include files that correspond to the
version of zlib that's installed.
You can rename the directories that you downloaded (they
-might be called "libpng-1.2.6rc2" or "lpng109" and "zlib-1.1.3"
+might be called "libpng-1.2.6rc3" or "lpng109" and "zlib-1.1.3"
or "zlib113") so that you have directories called "zlib" and "libpng".
Your directory structure should look like this:
@@ -64,8 +64,8 @@ The files that are presently available in the scripts directory
include
makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
- makefile.linux => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.6rc2)
- makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.6rc2,
+ makefile.linux => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.6rc3)
+ makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.6rc3,
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
@@ -85,10 +85,10 @@ include
makefile.ne0bsd => NetBSD/cc makefile, uses PNGGCCRD, makes libpng0.so
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.6rc2)
+ makefile.sggcc => Silicon Graphics (gcc, creates libpng12.so.0.1.2.6rc3)
makefile.sunos => Sun makefile
- makefile.solaris => Solaris 2.X makefile (gcc, creates libpng12.so.0.1.2.6rc2)
- makefile.so9 => Solaris 9 makefile (gcc, creates libpng12.so.0.1.2.6rc2)
+ makefile.solaris => Solaris 2.X makefile (gcc, creates libpng12.so.0.1.2.6rc3)
+ makefile.so9 => Solaris 9 makefile (gcc, creates libpng12.so.0.1.2.6rc3)
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 0b473b66f..6f11fe4dd 100644
--- a/KNOWNBUG
+++ b/KNOWNBUG
@@ -1,5 +1,5 @@
-Known bugs in libpng version 1.2.6rc2
+Known bugs in libpng version 1.2.6rc3
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
diff --git a/LICENSE b/LICENSE
index 6deebcaca..b7f999922 100644
--- a/LICENSE
+++ b/LICENSE
@@ -8,13 +8,12 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE:
If you modify libpng you may insert additional notices immediately following
this sentence.
-libpng version 1.2.6, August 8, 2004, is
+libpng version 1.2.6, August 10, 2004, is
Copyright (c) 2004 Glenn Randers-Pehrson, and is
distributed according to the same disclaimer and license as libpng-1.2.5
-with the following individuals added to the list of Contributing Authors
+with the following individual added to the list of Contributing Authors
Cosmin Truta
- -
libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are
Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
@@ -107,4 +106,4 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
glennrp@users.sourceforge.net
-August 8, 2004
+August 10, 2004
diff --git a/README b/README
index 335e56e71..ff5d20288 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README for libpng version 1.2.6rc2 - August 8, 2004 (shared library 12.0)
+README for libpng version 1.2.6rc3 - August 10, 2004 (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.
diff --git a/Y2KINFO b/Y2KINFO
index 4185958c4..5b2ab6ed3 100644
--- a/Y2KINFO
+++ b/Y2KINFO
@@ -1,13 +1,13 @@
Y2K compliance in libpng:
=========================
- August 8, 2004
+ August 10, 2004
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.6rc2 are Y2K compliant. It is my belief that earlier
+ upward through 1.2.6rc3 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 6ff193203..78ac12078 100755
--- a/configure
+++ b/configure
@@ -1,13 +1,13 @@
#!/bin/sh
echo "
There is no \"configure\" script in this distribution of
- libpng-1.2.6rc2.
+ libpng-1.2.6rc3.
Instead, please copy the appropriate makefile for your system from the
\"scripts\" directory. Read the INSTALL file for more details.
Update, July 2004: you can get a "configure" based distribution
from the libpng distribution sites. Download the file
- libpng-1.2.6rc2-config.tar.gz
+ libpng-1.2.6rc3-config.tar.gz
"
diff --git a/libpng.3 b/libpng.3
index c6bddbba7..f1158f924 100644
--- a/libpng.3
+++ b/libpng.3
@@ -1,6 +1,6 @@
-.TH LIBPNG 3 "August 8, 2004"
+.TH LIBPNG 3 "August 10, 2004"
.SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.2.6rc2
+libpng \- Portable Network Graphics (PNG) Reference Library 1.2.6rc3
.SH SYNOPSIS
\fI\fB
@@ -773,7 +773,7 @@ Following is a copy of the libpng.txt file that accompanies libpng.
.SH LIBPNG.TXT
libpng.txt - A description on how to use and modify libpng
- libpng version 1.2.6rc2 - August 8, 2004
+ libpng version 1.2.6rc3 - August 10, 2004
Updated and distributed by Glenn Randers-Pehrson
<glennrp@users.sourceforge.net>
Copyright (c) 1998-2004 Glenn Randers-Pehrson
@@ -1105,9 +1105,15 @@ this, you can call:
png_set_keep_unknown_chunks(png_ptr, keep,
chunk_list, num_chunks);
- keep - 0: do not keep
- 1: keep only if safe-to-copy
- 2: keep even if unsafe-to-copy
+ keep - 0: do not handle as unknown
+ 1: do not keep
+ 2: keep only if safe-to-copy
+ 3: keep even if unsafe-to-copy
+ You can use these definitions:
+ PNG_HANDLE_CHUNK_AS_DEFAULT 0
+ PNG_HANDLE_CHUNK_NEVER 1
+ PNG_HANDLE_CHUNK_IF_SAFE 2
+ PNG_HANDLE_CHUNK_ALWAYS 3
chunk_list - list of chunks affected (a byte string,
five bytes per chunk, NULL or '\0' if
num_chunks is 0)
@@ -1115,13 +1121,13 @@ this, you can call:
unknown chunks are affected. If nonzero,
only the chunks in the list are affected
-
Unknown chunks declared in this way will be saved as raw data onto a
list of png_unknown_chunk structures. If a chunk that is normally
known to libpng is named in the list, it will be handled as unknown,
according to the "keep" directive. If a chunk is named in successive
instances of png_set_keep_unknown_chunks(), the final instance will
-take precedence.
+take precedence. The IHDR and IEND chunks should not be named in
+chunk_list; if they are, libpng will process them normally anyway.
.SS The high-level read interface
@@ -3651,13 +3657,13 @@ application:
.SH VII. Y2K Compliance in libpng
-August 8, 2004
+August 10, 2004
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.6rc2 are Y2K compliant. It is my belief that earlier
+upward through 1.2.6rc3 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
@@ -3797,8 +3803,8 @@ the first widely used release:
1.0.15 10 10015 10.so.0.1.0.15
1.2.5 13 10205 12.so.0.1.2.5
1.2.6beta1-4 13 10206 12.so.0.1.2.6beta1-4
- 1.0.16rc1-4 10 10016 10.so.0.1.0.16rc1-4
- 1.2.6rc1-4 13 10206 12.so.0.1.2.6rc1-4
+ 1.0.16rc1-3 10 10016 10.so.0.1.0.16rc1-3
+ 1.2.6rc1-3 13 10206 12.so.0.1.2.6rc1-3
Henceforth the source version will match the shared-library minor
and patch numbers; the shared-library major version number will be
@@ -3856,7 +3862,7 @@ possible without all of you.
Thanks to Frank J. T. Wojcik for helping with the documentation.
-Libpng version 1.2.6rc2 - August 8, 2004:
+Libpng version 1.2.6rc3 - August 10, 2004:
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
Currently maintained by Glenn Randers-Pehrson (glennrp@users.sourceforge.net).
@@ -3873,13 +3879,12 @@ included in the libpng distribution, the latter shall prevail.)
If you modify libpng you may insert additional notices immediately following
this sentence.
-libpng version 1.2.6, August 8, 2004, is
+libpng version 1.2.6, August 10, 2004, is
Copyright (c) 2004 Glenn Randers-Pehrson, and is
distributed according to the same disclaimer and license as libpng-1.2.5
-with the following individuals added to the list of Contributing Authors
+with the following individual added to the list of Contributing Authors
Cosmin Truta
- -
libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are
Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
@@ -3973,7 +3978,7 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
glennrp@users.sourceforge.net
-August 8, 2004
+August 10, 2004
.\" end of man page
diff --git a/libpng.txt b/libpng.txt
index f8afdca3a..e212f628c 100644
--- a/libpng.txt
+++ b/libpng.txt
@@ -1,6 +1,6 @@
libpng.txt - A description on how to use and modify libpng
- libpng version 1.2.6rc2 - August 8, 2004
+ libpng version 1.2.6rc3 - August 10, 2004
Updated and distributed by Glenn Randers-Pehrson
<glennrp@users.sourceforge.net>
Copyright (c) 1998-2004 Glenn Randers-Pehrson
@@ -332,9 +332,15 @@ this, you can call:
png_set_keep_unknown_chunks(png_ptr, keep,
chunk_list, num_chunks);
- keep - 0: do not keep
- 1: keep only if safe-to-copy
- 2: keep even if unsafe-to-copy
+ keep - 0: do not handle as unknown
+ 1: do not keep
+ 2: keep only if safe-to-copy
+ 3: keep even if unsafe-to-copy
+ You can use these definitions:
+ PNG_HANDLE_CHUNK_AS_DEFAULT 0
+ PNG_HANDLE_CHUNK_NEVER 1
+ PNG_HANDLE_CHUNK_IF_SAFE 2
+ PNG_HANDLE_CHUNK_ALWAYS 3
chunk_list - list of chunks affected (a byte string,
five bytes per chunk, NULL or '\0' if
num_chunks is 0)
@@ -342,13 +348,13 @@ this, you can call:
unknown chunks are affected. If nonzero,
only the chunks in the list are affected
-
Unknown chunks declared in this way will be saved as raw data onto a
list of png_unknown_chunk structures. If a chunk that is normally
known to libpng is named in the list, it will be handled as unknown,
according to the "keep" directive. If a chunk is named in successive
instances of png_set_keep_unknown_chunks(), the final instance will
-take precedence.
+take precedence. The IHDR and IEND chunks should not be named in
+chunk_list; if they are, libpng will process them normally anyway.
The high-level read interface
@@ -2878,13 +2884,13 @@ application:
VII. Y2K Compliance in libpng
-August 8, 2004
+August 10, 2004
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.6rc2 are Y2K compliant. It is my belief that earlier
+upward through 1.2.6rc3 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/libpngpf.3 b/libpngpf.3
index 88f5efa0c..62c0966eb 100644
--- a/libpngpf.3
+++ b/libpngpf.3
@@ -1,6 +1,6 @@
-.TH LIBPNGPF 3 "August 8, 2004"
+.TH LIBPNGPF 3 "August 10, 2004"
.SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.2.6rc2
+libpng \- Portable Network Graphics (PNG) Reference Library 1.2.6rc3
(private functions)
.SH SYNOPSIS
\fB\fB#include <png.h>\fP\fP
diff --git a/png.5 b/png.5
index 843ae52d7..1ea941781 100644
--- a/png.5
+++ b/png.5
@@ -1,4 +1,4 @@
-.TH PNG 5 "August 8, 2004"
+.TH PNG 5 "August 10, 2004"
.SH NAME
png \- Portable Network Graphics (PNG) format
.SH DESCRIPTION
diff --git a/png.c b/png.c
index 97b36c9ab..8c62bd66a 100644
--- a/png.c
+++ b/png.c
@@ -1,7 +1,7 @@
/* png.c - location for general purpose libpng functions
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 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_6rc2 Your_png_h_is_not_version_1_2_6rc2;
+typedef version_1_2_6rc3 Your_png_h_is_not_version_1_2_6rc3;
/* Version information for C files. This had better match the version
* string defined in png.h. */
@@ -678,7 +678,7 @@ png_charp PNGAPI
png_get_copyright(png_structp png_ptr)
{
if (&png_ptr != NULL) /* silence compiler warning about unused png_ptr */
- return ((png_charp) "\n libpng version 1.2.6rc2 - August 8, 2004\n\
+ return ((png_charp) "\n libpng version 1.2.6rc3 - August 10, 2004\n\
Copyright (c) 1998-2004 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 4a75b2539..3bb5c44a9 100644
--- a/png.h
+++ b/png.h
@@ -1,6 +1,6 @@
/* png.h - header file for PNG reference library
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* Copyright (c) 1998-2004 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.)
@@ -8,7 +8,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.6rc2 - August 8, 2004: Glenn
+ * libpng versions 0.97, January 1998, through 1.2.6rc3 - August 10, 2004: Glenn
* See also "Contributing Authors", below.
*
* Note about libpng version numbers:
@@ -99,8 +99,8 @@
* 1.0.15 10 10015 10.so.0.1.0.15
* 1.2.5 13 10205 12.so.0.1.2.5
* 1.2.6beta1-4 13 10206 12.so.0.1.2.6beta1-4
- * 1.0.16rc1-4 10 10016 10.so.0.1.0.16rc1-4
- * 1.2.6rc1-4 13 10206 12.so.0.1.2.6rc1-4
+ * 1.0.16rc1-3 10 10016 10.so.0.1.0.16rc1-3
+ * 1.2.6rc1-3 13 10206 12.so.0.1.2.6rc1-3
*
* Henceforth the source version will match the shared-library major
* and minor numbers; the shared-library major version number will be
@@ -130,13 +130,12 @@
* If you modify libpng you may insert additional notices immediately following
* this sentence.
*
- * libpng version 1.2.6, August 8, 2004, is
+ * libpng version 1.2.6, August 10, 2004, is
* Copyright (c) 2004 Glenn Randers-Pehrson, and is
* distributed according to the same disclaimer and license as libpng-1.2.5
- * with the following individuals added to the list of Contributing Authors
+ * with the following individual added to the list of Contributing Authors
*
* Cosmin Truta
- * -
*
* libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are
* Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
@@ -243,13 +242,13 @@
* Y2K compliance in libpng:
* =========================
*
- * August 8, 2004
+ * August 10, 2004
*
* 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.6rc2 are Y2K compliant. It is my belief that earlier
+ * upward through 1.2.6rc3 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
@@ -305,9 +304,9 @@
*/
/* Version information for png.h - this should match the version in png.c */
-#define PNG_LIBPNG_VER_STRING "1.2.6rc2"
+#define PNG_LIBPNG_VER_STRING "1.2.6rc3"
#define PNG_HEADER_VERSION_STRING \
- " libpng version 1.2.6rc2 - August 8, 2004 (header)\n"
+ " libpng version 1.2.6rc3 - August 10, 2004 (header)\n"
#define PNG_LIBPNG_VER_SONUM 0
#define PNG_LIBPNG_VER_DLLNUM %DLLNUM%
@@ -319,7 +318,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 2
+#define PNG_LIBPNG_VER_BUILD 3
#define PNG_LIBPNG_BUILD_ALPHA 1
#define PNG_LIBPNG_BUILD_BETA 2
@@ -1311,7 +1310,7 @@ struct png_struct_def
/* This triggers a compiler error in png.c, if png.c and png.h
* do not agree upon the version number.
*/
-typedef png_structp version_1_2_6rc2;
+typedef png_structp version_1_2_6rc3;
typedef png_struct FAR * FAR * png_structpp;
@@ -2417,6 +2416,11 @@ extern PNG_EXPORT(png_uint_32,png_permit_mng_features) PNGARG((png_structp
#define PNG_SELECT_READ 1
#define PNG_SELECT_WRITE 2
+/* For use in png_set_keep_unknown */
+#define PNG_HANDLE_CHUNK_AS_DEFAULT 0
+#define PNG_HANDLE_CHUNK_NEVER 1
+#define PNG_HANDLE_CHUNK_IF_SAFE 2
+#define PNG_HANDLE_CHUNK_ALWAYS 3
#if !defined(PNG_1_0_X)
/* pngget.c */
@@ -2601,12 +2605,6 @@ extern PNG_EXPORT(png_uint_32,png_get_user_height_max) PNGARG((png_structp
#define PNG_FLAG_STRIP_ERROR_TEXT 0x80000L
#define PNG_FLAG_MALLOC_NULL_MEM_OK 0x100000L
-/* For use in png_set_keep_unknown, png_handle_as_unknown */
-#define PNG_HANDLE_CHUNK_AS_DEFAULT 0
-#define PNG_HANDLE_CHUNK_NEVER 1
-#define PNG_HANDLE_CHUNK_IF_SAFE 2
-#define PNG_HANDLE_CHUNK_ALWAYS 3
-
#define PNG_FLAG_CRC_ANCILLARY_MASK (PNG_FLAG_CRC_ANCILLARY_USE | \
PNG_FLAG_CRC_ANCILLARY_NOWARN)
@@ -2618,14 +2616,22 @@ extern PNG_EXPORT(png_uint_32,png_get_user_height_max) PNGARG((png_structp
/* save typing and make code easier to understand */
+#define PNG_COLOR_DIST(c1, c2) (abs((int)((c1).red) - (int)((c2).red)) + \
+ abs((int)((c1).green) - (int)((c2).green)) + \
+ abs((int)((c1).blue) - (int)((c2).blue)))
+
+/* Added to libpng-1.2.6 JB */
#define PNG_ROWBYTES(pixel_bits, width) \
((pixel_bits) >= 8 ? \
((width) * (((png_uint_32)(pixel_bits)) >> 3)) : \
(( ((width) * ((png_uint_32)(pixel_bits))) + 7) >> 3) )
-#define PNG_COLOR_DIST(c1, c2) (abs((int)((c1).red) - (int)((c2).red)) + \
- abs((int)((c1).green) - (int)((c2).green)) + \
- abs((int)((c1).blue) - (int)((c2).blue)))
+/* PNG_OUT_OF_RANGE returns true if value is outside the range
+ ideal-delta..ideal+delta. Each argument is evaluated twice.
+ "ideal" and "delta" should be constants, normally simple
+ integers, "value" a variable. Added to libpng-1.2.6 JB */
+#define PNG_OUT_OF_RANGE(value, ideal, delta) \
+ ( (value) < (ideal)-(delta) || (value) > (ideal)+(delta) )
/* variables declared in png.c - only it needs to define PNG_NO_EXTERN */
#if !defined(PNG_NO_EXTERN) || defined(PNG_ALWAYS_EXTERN)
diff --git a/pngasmrd.h b/pngasmrd.h
index 1143b20c9..ab1963e1e 100644
--- a/pngasmrd.h
+++ b/pngasmrd.h
@@ -1,6 +1,6 @@
/* pngasmrd.h - assembler version of utilities to read a PNG file
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 2002-2004 Glenn Randers-Pehrson
*
diff --git a/pngconf.h b/pngconf.h
index 259f451da..1cfce5f06 100644
--- a/pngconf.h
+++ b/pngconf.h
@@ -1,7 +1,7 @@
/* pngconf.h - machine configurable file for libpng
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngerror.c b/pngerror.c
index 60c148504..1b0c05f58 100644
--- a/pngerror.c
+++ b/pngerror.c
@@ -1,7 +1,7 @@
/* pngerror.c - stub functions for i/o and memory allocation
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pnggccrd.c b/pnggccrd.c
index f4eadbac1..94bb1380b 100644
--- a/pnggccrd.c
+++ b/pnggccrd.c
@@ -6,7 +6,7 @@
* and http://www.intel.com/drg/pentiumII/appnotes/923/923.htm
* for Intel's performance analysis of the MMX vs. non-MMX code.
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation
@@ -1773,8 +1773,8 @@ png_do_read_interlace(png_structp png_ptr)
: "1" (sptr), // esi // input regs
"2" (dp), // edi
- "0" (width) // ecx
-// doesn't work "i" (0x0000000000FFFFFFLL) // %1 (a.k.a. _const4)
+ "0" (width), // ecx
+ "rim" (_const4) // %1(?) (0x0000000000FFFFFFLL)
#if 0 /* %mm0, ..., %mm4 not supported by gcc 2.7.2.3 or egcs 1.1 */
: "%mm0", "%mm1", "%mm2" // clobber list
@@ -1817,7 +1817,8 @@ png_do_read_interlace(png_structp png_ptr)
: "1" (sptr), // esi // input regs
"2" (dp), // edi
- "0" (width) // ecx
+ "0" (width), // ecx
+ "rim" (_const4) // (0x0000000000FFFFFFLL)
#if 0 /* %mm0, ..., %mm2 not supported by gcc 2.7.2.3 or egcs 1.1 */
: "%mm0", "%mm1", "%mm2" // clobber list
@@ -1871,7 +1872,9 @@ png_do_read_interlace(png_structp png_ptr)
: "1" (sptr), // esi // input regs
"2" (dp), // edi
- "0" (width_mmx) // ecx
+ "0" (width_mmx), // ecx
+ "rim" (_const4), // 0x0000000000FFFFFFLL
+ "rim" (_const6) // 0x00000000000000FFLL
#if 0 /* %mm0, ..., %mm3 not supported by gcc 2.7.2.3 or egcs 1.1 */
: "%mm0", "%mm1" // clobber list
diff --git a/pngget.c b/pngget.c
index 7449eb6df..1e01fa944 100644
--- a/pngget.c
+++ b/pngget.c
@@ -1,7 +1,7 @@
/* pngget.c - retrieval of values from info struct
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngmem.c b/pngmem.c
index 81c3e6a7a..be99b8f1a 100644
--- a/pngmem.c
+++ b/pngmem.c
@@ -1,7 +1,7 @@
/* pngmem.c - stub functions for memory allocation
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngpread.c b/pngpread.c
index fbf299307..77eeb1cbc 100644
--- a/pngpread.c
+++ b/pngpread.c
@@ -1,7 +1,7 @@
/* pngpread.c - read a png file in push mode
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -223,6 +223,41 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
}
png_handle_IHDR(png_ptr, info_ptr, png_ptr->push_length);
}
+ else if (!png_memcmp(png_ptr->chunk_name, png_IEND, 4))
+ {
+ if (png_ptr->push_length + 4 > png_ptr->buffer_size)
+ {
+ png_push_save_buffer(png_ptr);
+ return;
+ }
+ png_handle_IEND(png_ptr, info_ptr, png_ptr->push_length);
+
+ png_ptr->process_mode = PNG_READ_DONE_MODE;
+ png_push_have_end(png_ptr, info_ptr);
+ }
+#ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED
+ else if (png_handle_as_unknown(png_ptr, png_ptr->chunk_name))
+ {
+ if (png_ptr->push_length + 4 > png_ptr->buffer_size)
+ {
+ png_push_save_buffer(png_ptr);
+ return;
+ }
+ if (!png_memcmp(png_ptr->chunk_name, png_IDAT, 4))
+ png_ptr->mode |= PNG_HAVE_IDAT;
+ png_handle_unknown(png_ptr, info_ptr, png_ptr->push_length);
+ if (!png_memcmp(png_ptr->chunk_name, png_PLTE, 4))
+ png_ptr->mode |= PNG_HAVE_PLTE;
+ else if (!png_memcmp(png_ptr->chunk_name, png_IDAT, 4))
+ {
+ if (!(png_ptr->mode & PNG_HAVE_IHDR))
+ png_error(png_ptr, "Missing IHDR before IDAT");
+ else if (png_ptr->color_type == PNG_COLOR_TYPE_PALETTE &&
+ !(png_ptr->mode & PNG_HAVE_PLTE))
+ png_error(png_ptr, "Missing PLTE before IDAT");
+ }
+ }
+#endif
else if (!png_memcmp(png_ptr->chunk_name, png_PLTE, 4))
{
if (png_ptr->push_length + 4 > png_ptr->buffer_size)
@@ -261,18 +296,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_ptr->zstream.next_out = png_ptr->row_buf;
return;
}
- else if (!png_memcmp(png_ptr->chunk_name, png_IEND, 4))
- {
- if (png_ptr->push_length + 4 > png_ptr->buffer_size)
- {
- png_push_save_buffer(png_ptr);
- return;
- }
- png_handle_IEND(png_ptr, info_ptr, png_ptr->push_length);
-
- png_ptr->process_mode = PNG_READ_DONE_MODE;
- png_push_have_end(png_ptr, info_ptr);
- }
#if defined(PNG_READ_gAMA_SUPPORTED)
else if (!png_memcmp(png_ptr->chunk_name, png_gAMA, 4))
{
diff --git a/pngread.c b/pngread.c
index 8bbf17d2f..c463ec316 100644
--- a/pngread.c
+++ b/pngread.c
@@ -1,7 +1,7 @@
/* pngread.c - read a PNG file
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -803,7 +803,7 @@ png_read_row(png_structp png_ptr, png_bytep row, png_bytep dsp_row)
* not called png_set_interlace_handling(), the display_row buffer will
* be ignored, so pass NULL to it.
*
- * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.6rc2
+ * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.6rc3
*/
void PNGAPI
@@ -853,7 +853,7 @@ png_read_rows(png_structp png_ptr, png_bytepp row,
* only call this function once. If you desire to have an image for
* each pass of a interlaced image, use png_read_rows() instead.
*
- * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.6rc2
+ * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.6rc3
*/
void PNGAPI
png_read_image(png_structp png_ptr, png_bytepp image)
diff --git a/pngrio.c b/pngrio.c
index e483101d2..5af9265eb 100644
--- a/pngrio.c
+++ b/pngrio.c
@@ -1,7 +1,7 @@
/* pngrio.c - functions for data input
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngrtran.c b/pngrtran.c
index f4dea7ae4..ea7b36776 100644
--- a/pngrtran.c
+++ b/pngrtran.c
@@ -1,7 +1,7 @@
/* pngrtran.c - transforms the data in a row for PNG readers
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -482,12 +482,14 @@ png_set_dither(png_structp png_ptr, png_colorp palette,
for (ir = 0; ir < num_red; ir++)
{
- int dr = abs(ir - r);
+ /* int dr = abs(ir - r); */
+ int dr = ((ir > r) ? ir - r : r - ir);
int index_r = (ir << (PNG_DITHER_BLUE_BITS + PNG_DITHER_GREEN_BITS));
for (ig = 0; ig < num_green; ig++)
{
- int dg = abs(ig - g);
+ /* int dg = abs(ig - g); */
+ int dg = ((ig > g) ? ig - g : g - ig);
int dt = dr + dg;
int dm = ((dr > dg) ? dr : dg);
int index_g = index_r | (ig << PNG_DITHER_BLUE_BITS);
@@ -495,7 +497,8 @@ png_set_dither(png_structp png_ptr, png_colorp palette,
for (ib = 0; ib < num_blue; ib++)
{
int d_index = index_g | ib;
- int db = abs(ib - b);
+ /* int db = abs(ib - b); */
+ int db = ((ib > b) ? ib - b : b - ib);
int dmax = ((dm > db) ? dm : db);
int d = dmax + dt + db;
diff --git a/pngrutil.c b/pngrutil.c
index b96e9b14a..2c875dadd 100644
--- a/pngrutil.c
+++ b/pngrutil.c
@@ -1,6 +1,6 @@
/* pngrutil.c - utilities to read a PNG file
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -620,7 +620,7 @@ png_handle_gAMA(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
#if defined(PNG_READ_sRGB_SUPPORTED)
if (info_ptr->valid & PNG_INFO_sRGB)
- if(igamma < 45000L || igamma > 46000L)
+ if (PNG_OUT_OF_RANGE(igamma, 45500L, 500))
{
png_warning(png_ptr,
"Ignoring incorrect gAMA value when sRGB is also present");
@@ -833,14 +833,14 @@ png_handle_cHRM(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
#if defined(PNG_READ_sRGB_SUPPORTED)
if (info_ptr->valid & PNG_INFO_sRGB)
{
- if (abs((png_int_32)(int_x_white - 31270L)) > 1000 ||
- abs((png_int_32)(int_y_white - 32900L)) > 1000 ||
- abs((png_int_32)(int_x_red - 64000L)) > 1000 ||
- abs((png_int_32)(int_y_red - 33000L)) > 1000 ||
- abs((png_int_32)(int_x_green - 30000L)) > 1000 ||
- abs((png_int_32)(int_y_green - 60000L)) > 1000 ||
- abs((png_int_32)(int_x_blue - 15000L)) > 1000 ||
- abs((png_int_32)(int_y_blue - 6000L)) > 1000)
+ if (PNG_OUT_OF_RANGE(int_x_white, 31270, 1000) ||
+ PNG_OUT_OF_RANGE(int_y_white, 32900, 1000) ||
+ PNG_OUT_OF_RANGE(int_x_red, 64000L, 1000) ||
+ PNG_OUT_OF_RANGE(int_y_red, 33000, 1000) ||
+ PNG_OUT_OF_RANGE(int_x_green, 30000, 1000) ||
+ PNG_OUT_OF_RANGE(int_y_green, 60000L, 1000) ||
+ PNG_OUT_OF_RANGE(int_x_blue, 15000, 1000) ||
+ PNG_OUT_OF_RANGE(int_y_blue, 6000, 1000))
{
png_warning(png_ptr,
@@ -936,7 +936,7 @@ png_handle_sRGB(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
igamma=(png_fixed_point)(info_ptr->gamma * 100000.);
# endif
#endif
- if(igamma < 45000L || igamma > 46000L)
+ if (PNG_OUT_OF_RANGE(igamma, 45500L, 500))
{
png_warning(png_ptr,
"Ignoring incorrect gAMA value when sRGB is also present");
@@ -956,14 +956,14 @@ png_handle_sRGB(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
#ifdef PNG_READ_cHRM_SUPPORTED
#ifdef PNG_FIXED_POINT_SUPPORTED
if (info_ptr->valid & PNG_INFO_cHRM)
- if (abs((png_int_32)(info_ptr->int_x_white - 31270L)) > 1000 ||
- abs((png_int_32)(info_ptr->int_y_white - 32900L)) > 1000 ||
- abs((png_int_32)(info_ptr->int_x_red - 64000L)) > 1000 ||
- abs((png_int_32)(info_ptr->int_y_red - 33000L)) > 1000 ||
- abs((png_int_32)(info_ptr->int_x_green - 30000L)) > 1000 ||
- abs((png_int_32)(info_ptr->int_y_green - 60000L)) > 1000 ||
- abs((png_int_32)(info_ptr->int_x_blue - 15000L)) > 1000 ||
- abs((png_int_32)(info_ptr->int_y_blue - 6000L)) > 1000)
+ if (PNG_OUT_OF_RANGE(info_ptr->int_x_white, 31270, 1000) ||
+ PNG_OUT_OF_RANGE(info_ptr->int_y_white, 32900, 1000) ||
+ PNG_OUT_OF_RANGE(info_ptr->int_x_red, 64000L, 1000) ||
+ PNG_OUT_OF_RANGE(info_ptr->int_y_red, 33000, 1000) ||
+ PNG_OUT_OF_RANGE(info_ptr->int_x_green, 30000, 1000) ||
+ PNG_OUT_OF_RANGE(info_ptr->int_y_green, 60000L, 1000) ||
+ PNG_OUT_OF_RANGE(info_ptr->int_x_blue, 15000, 1000) ||
+ PNG_OUT_OF_RANGE(info_ptr->int_y_blue, 6000, 1000))
{
png_warning(png_ptr,
"Ignoring incorrect cHRM value when sRGB is also present");
diff --git a/pngset.c b/pngset.c
index d4f70cc01..378effc32 100644
--- a/pngset.c
+++ b/pngset.c
@@ -1,7 +1,7 @@
/* pngset.c - storage of image information into info struct
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngtest.c b/pngtest.c
index fd90146ef..3b9351b4f 100644
--- a/pngtest.c
+++ b/pngtest.c
@@ -1,7 +1,7 @@
/* pngtest.c - a simple test program to test libpng
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -470,7 +470,7 @@ pngtest_error(png_structp png_ptr, png_const_charp message)
/* END of code to validate stdio-free compilation */
/* START of code to validate memory allocation and deallocation */
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
/* Allocate memory. For reasonable files, size should never exceed
64K. However, zlib may allocate more then 64K if you don't tell
@@ -594,7 +594,7 @@ png_debug_free(png_structp png_ptr, png_voidp ptr)
png_free_default(png_ptr, ptr);
ptr=NULL;
}
-#endif /* PNG_USER_MEM_SUPPORTED */
+#endif /* PNG_USER_MEM_SUPPORTED && PNG_DEBUG */
/* END of code to test memory allocation/deallocation */
/* Test one file */
@@ -656,7 +656,7 @@ test_one_file(PNG_CONST char *inname, PNG_CONST char *outname)
}
png_debug(0, "Allocating read and write structures\n");
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
read_ptr = png_create_read_struct_2(PNG_LIBPNG_VER_STRING, png_voidp_NULL,
png_error_ptr_NULL, png_error_ptr_NULL, png_voidp_NULL,
(png_malloc_ptr)png_debug_malloc, (png_free_ptr)png_debug_free);
@@ -669,7 +669,7 @@ test_one_file(PNG_CONST char *inname, PNG_CONST char *outname)
pngtest_warning);
#endif
#ifdef PNG_WRITE_SUPPORTED
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
write_ptr = png_create_write_struct_2(PNG_LIBPNG_VER_STRING, png_voidp_NULL,
png_error_ptr_NULL, png_error_ptr_NULL, png_voidp_NULL,
(png_malloc_ptr)png_debug_malloc, (png_free_ptr)png_debug_free);
@@ -1391,7 +1391,7 @@ main(int argc, char *argv[])
if (multiple)
{
int i;
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
int allocation_now = current_allocation;
#endif
for (i=2; i<argc; ++i)
@@ -1426,7 +1426,7 @@ main(int argc, char *argv[])
fprintf(STDERR, " FAIL\n");
ierror += kerror;
}
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
if (allocation_now != current_allocation)
fprintf(STDERR, "MEMORY ERROR: %d bytes lost\n",
current_allocation-allocation_now);
@@ -1445,7 +1445,7 @@ main(int argc, char *argv[])
}
#endif
}
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
fprintf(STDERR, " Current memory allocation: %10d bytes\n",
current_allocation);
fprintf(STDERR, " Maximum memory allocation: %10d bytes\n",
@@ -1462,7 +1462,7 @@ main(int argc, char *argv[])
for (i=0; i<3; ++i)
{
int kerror;
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
int allocation_now = current_allocation;
#endif
if (i == 1) status_dots_requested = 1;
@@ -1501,7 +1501,7 @@ main(int argc, char *argv[])
fprintf(STDERR, " FAIL\n");
ierror += kerror;
}
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
if (allocation_now != current_allocation)
fprintf(STDERR, "MEMORY ERROR: %d bytes lost\n",
current_allocation-allocation_now);
@@ -1520,7 +1520,7 @@ main(int argc, char *argv[])
}
#endif
}
-#ifdef PNG_USER_MEM_SUPPORTED
+#if defined(PNG_USER_MEM_SUPPORTED) && defined(PNG_DEBUG)
fprintf(STDERR, " Current memory allocation: %10d bytes\n",
current_allocation);
fprintf(STDERR, " Maximum memory allocation: %10d bytes\n",
@@ -1554,4 +1554,4 @@ main(int argc, char *argv[])
}
/* Generate a compiler error if there is an old png.h in the search path. */
-typedef version_1_2_6rc2 your_png_h_is_not_version_1_2_6rc2;
+typedef version_1_2_6rc3 your_png_h_is_not_version_1_2_6rc3;
diff --git a/pngtrans.c b/pngtrans.c
index 09fe12790..e9819a3eb 100644
--- a/pngtrans.c
+++ b/pngtrans.c
@@ -1,7 +1,7 @@
/* pngtrans.c - transforms the data in a row (used by both readers and writers)
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngvcrd.c b/pngvcrd.c
index db89e34ac..7454b37c4 100644
--- a/pngvcrd.c
+++ b/pngvcrd.c
@@ -2,7 +2,7 @@
*
* For Intel x86 CPU and Microsoft Visual C++ compiler
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation
diff --git a/pngwio.c b/pngwio.c
index 181388f6c..207128228 100644
--- a/pngwio.c
+++ b/pngwio.c
@@ -1,7 +1,7 @@
/* pngwio.c - functions for data output
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngwrite.c b/pngwrite.c
index dc737e245..fa1055805 100644
--- a/pngwrite.c
+++ b/pngwrite.c
@@ -1,7 +1,7 @@
/* pngwrite.c - general routines to write a PNG file
*
- * libpng 1.2.6rc2 - August 8, 2004
+ * libpng 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngwtran.c b/pngwtran.c
index a4113e6ef..40955db2f 100644
--- a/pngwtran.c
+++ b/pngwtran.c
@@ -1,7 +1,7 @@
/* pngwtran.c - transforms the data in a row for PNG writers
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngwutil.c b/pngwutil.c
index 44c18f623..23a7dca72 100644
--- a/pngwutil.c
+++ b/pngwutil.c
@@ -1,7 +1,7 @@
/* pngwutil.c - utilities to write a PNG file
*
- * libpng version 1.2.6rc2 - August 8, 2004
+ * libpng version 1.2.6rc3 - August 10, 2004
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2004 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/scripts/libpng-config-head.in b/scripts/libpng-config-head.in
index d61a4c517..3952c0b3d 100755
--- a/scripts/libpng-config-head.in
+++ b/scripts/libpng-config-head.in
@@ -8,7 +8,7 @@
# Modeled after libxml-config.
-version=1.2.6rc2
+version=1.2.6rc3
prefix=""
libdir=""
libs=""
diff --git a/scripts/libpng.pc.in b/scripts/libpng.pc.in
index dfee96eca..6a69da938 100644
--- a/scripts/libpng.pc.in
+++ b/scripts/libpng.pc.in
@@ -6,6 +6,6 @@ includedir=${exec_prefix}/include
Name: libpng12
Description: Loads and saves PNG files
-Version: 1.2.6rc2
+Version: 1.2.6rc3
Libs: -L${libdir} -lpng12 -lz -lm
Cflags: -I${includedir}/libpng12
diff --git a/scripts/makefile.32sunu b/scripts/makefile.32sunu
index bd1357354..b45a4a164 100644
--- a/scripts/makefile.32sunu
+++ b/scripts/makefile.32sunu
@@ -33,7 +33,7 @@ RANLIB=echo
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
INCPATH=$(prefix)/include
diff --git a/scripts/makefile.64sunu b/scripts/makefile.64sunu
index fe59c64cc..aae2a9edc 100644
--- a/scripts/makefile.64sunu
+++ b/scripts/makefile.64sunu
@@ -33,7 +33,7 @@ RANLIB=echo
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
INCPATH=$(prefix)/include
diff --git a/scripts/makefile.aix b/scripts/makefile.aix
index e3b3556d4..5aef6d6c1 100644
--- a/scripts/makefile.aix
+++ b/scripts/makefile.aix
@@ -18,7 +18,7 @@ RM = rm -f
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
prefix=/usr/local
diff --git a/scripts/makefile.beos b/scripts/makefile.beos
index c6abf9be7..4e660bcb3 100644
--- a/scripts/makefile.beos
+++ b/scripts/makefile.beos
@@ -12,7 +12,7 @@ ZLIBLIB=/usr/local/lib
ZLIBINC=/usr/local/include
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
ALIGN=
diff --git a/scripts/makefile.cygwin b/scripts/makefile.cygwin
index 8fdfc6105..c5bb56742 100644
--- a/scripts/makefile.cygwin
+++ b/scripts/makefile.cygwin
@@ -79,7 +79,7 @@ CFLAGS= $(strip $(MINGW_CCFLAGS) $(addprefix -I,$(ZLIBINC)) \
LIBNAME = libpng12
PNGMAJ = 0
CYGDLL = 12
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
SHAREDLIB=cygpng$(CYGDLL).dll
diff --git a/scripts/makefile.darwin b/scripts/makefile.darwin
index ca5bc689c..00e770b22 100644
--- a/scripts/makefile.darwin
+++ b/scripts/makefile.darwin
@@ -23,7 +23,7 @@ LDFLAGS=-L. -L$(ZLIBLIB) -lpng12 -lz
RANLIB=ranlib
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/makefile.dec b/scripts/makefile.dec
index 38e683f17..9686d5721 100644
--- a/scripts/makefile.dec
+++ b/scripts/makefile.dec
@@ -32,7 +32,7 @@ ZLIBLIB=../zlib
ZLIBINC=../zlib
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx
index 234254d3b..96e5905e0 100644
--- a/scripts/makefile.gcmmx
+++ b/scripts/makefile.gcmmx
@@ -15,7 +15,7 @@
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
CC=gcc
diff --git a/scripts/makefile.hpgcc b/scripts/makefile.hpgcc
index 2f0b5c4b2..fae86a97c 100644
--- a/scripts/makefile.hpgcc
+++ b/scripts/makefile.hpgcc
@@ -41,7 +41,7 @@ RANLIB=ranlib
#RANLIB=echo
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/makefile.hpux b/scripts/makefile.hpux
index 598cfc0c5..03f9fcb80 100644
--- a/scripts/makefile.hpux
+++ b/scripts/makefile.hpux
@@ -24,7 +24,7 @@ LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz -lm
RANLIB=ranlib
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/makefile.linux b/scripts/makefile.linux
index 13901e29b..41327ab87 100644
--- a/scripts/makefile.linux
+++ b/scripts/makefile.linux
@@ -5,7 +5,7 @@
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
CC=gcc
diff --git a/scripts/makefile.ne12bsd b/scripts/makefile.ne12bsd
index c7c233279..de851b848 100644
--- a/scripts/makefile.ne12bsd
+++ b/scripts/makefile.ne12bsd
@@ -13,7 +13,7 @@ INCSDIR=${LOCALBASE}/include/libpng12
LIB= png12
SHLIB_MAJOR= 0
-SHLIB_MINOR= 1.2.6rc2
+SHLIB_MINOR= 1.2.6rc3
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 6d67dbd0a..6139a8c2d 100644
--- a/scripts/makefile.netbsd
+++ b/scripts/makefile.netbsd
@@ -13,7 +13,7 @@ INCSDIR=${LOCALBASE}/include/libpng
LIB= png
SHLIB_MAJOR= 3
-SHLIB_MINOR= 1.2.6rc2
+SHLIB_MINOR= 1.2.6rc3
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.openbsd b/scripts/makefile.openbsd
index dcfb33b4f..7ff4d3fed 100644
--- a/scripts/makefile.openbsd
+++ b/scripts/makefile.openbsd
@@ -7,7 +7,7 @@ LIBDIR= ${PREFIX}/lib
MANDIR= ${PREFIX}/man/cat
SHLIB_MAJOR= 0
-SHLIB_MINOR= 1.2.6rc2
+SHLIB_MINOR= 1.2.6rc3
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 eab699a4a..d4b40c905 100644
--- a/scripts/makefile.sco
+++ b/scripts/makefile.sco
@@ -24,7 +24,7 @@ LDFLAGS=-L. -L$(ZLIBLIB) -lpng12 -lz -lm
RANLIB=echo
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/makefile.sggcc b/scripts/makefile.sggcc
index f7491258e..9b692e588 100644
--- a/scripts/makefile.sggcc
+++ b/scripts/makefile.sggcc
@@ -18,7 +18,7 @@ ZLIBINC=../zlib
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
CC=gcc
diff --git a/scripts/makefile.sgi b/scripts/makefile.sgi
index fe235cd61..45bdbe887 100644
--- a/scripts/makefile.sgi
+++ b/scripts/makefile.sgi
@@ -5,7 +5,7 @@
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
# Where make install puts libpng.a, libpng12.so, and libpng12/png.h
diff --git a/scripts/makefile.so9 b/scripts/makefile.so9
index 568b2ce5c..7de91c1e4 100644
--- a/scripts/makefile.so9
+++ b/scripts/makefile.so9
@@ -34,7 +34,7 @@ LDFLAGS=-L. -R. -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng12 -lz -lm
RANLIB=echo
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris
index 030ac782e..29ed29ebf 100644
--- a/scripts/makefile.solaris
+++ b/scripts/makefile.solaris
@@ -30,7 +30,7 @@ LDFLAGS=-L. -R. -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng12 -lz -lm
RANLIB=echo
PNGMAJ = 0
-PNGMIN = 1.2.6rc2
+PNGMIN = 1.2.6rc3
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/pngos2.def b/scripts/pngos2.def
index ba8c2a734..3371091a4 100644
--- a/scripts/pngos2.def
+++ b/scripts/pngos2.def
@@ -2,7 +2,7 @@
; PNG.LIB module definition file for OS/2
;----------------------------------------
-; Version 1.2.6rc2
+; Version 1.2.6rc3
LIBRARY PNG
DESCRIPTION "PNG image compression library for OS/2"
diff --git a/scripts/pngw32.def b/scripts/pngw32.def
index 5af2a2809..3a3b0e235 100644
--- a/scripts/pngw32.def
+++ b/scripts/pngw32.def
@@ -6,7 +6,7 @@ LIBRARY
DESCRIPTION "PNG image compression library for Windows"
EXPORTS
-;Version 1.2.6rc2
+;Version 1.2.6rc3
png_build_grayscale_palette @1
png_check_sig @2
png_chunk_error @3