mirror of
https://git.code.sf.net/p/libpng/code.git
synced 2025-07-10 18:04:09 +02:00
[libpng10] Imported from libpng-1.0.31.tar
This commit is contained in:
parent
be5217de8c
commit
80d4e25c9d
97
ANNOUNCE
97
ANNOUNCE
@ -1,94 +1,67 @@
|
||||
|
||||
Libpng 1.0.31rc01 - January 17, 2008
|
||||
Libpng 1.0.31 - February 18, 2008
|
||||
|
||||
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.
|
||||
This is a public release of libpng, intended for use in production codes.
|
||||
|
||||
Files available for download:
|
||||
|
||||
Source files with LF line endings (for Unix/Linux) and with a
|
||||
"configure" script
|
||||
|
||||
libpng-1.0.31rc01.tar.gz
|
||||
libpng-1.0.31rc01.tar.bz2
|
||||
libpng-1.0.31.tar.gz
|
||||
libpng-1.0.31.tar.lzma
|
||||
(Get the lzma codec from <http://tukaani.org/lzma>).
|
||||
libpng-1.0.31.tar.bz2
|
||||
|
||||
Source files with LF line endings (for Unix/Linux) without the
|
||||
"configure" script
|
||||
|
||||
libpng-1.0.31rc01-no-config.tar.gz
|
||||
libpng-1.0.31rc01-no-config.tar.bz2
|
||||
libpng-1.0.31-no-config.tar.gz
|
||||
libpng-1.0.31-no-config.tar.lzma
|
||||
libpng-1.0.31-no-config.tar.bz2
|
||||
|
||||
Source files with CRLF line endings (for Windows), without the
|
||||
"configure" script
|
||||
|
||||
lp1031r01.zip
|
||||
lp1031r01.tar.bz2
|
||||
lpng1031.zip
|
||||
lpng1031.7z
|
||||
lpng1031.tar.bz2
|
||||
|
||||
Project files
|
||||
|
||||
libpng-1.0.31rc01-project-netware.zip
|
||||
libpng-1.0.31rc01-project-wince.zip
|
||||
libpng-1.0.31-project-netware.zip
|
||||
libpng-1.0.31-project-wince.zip
|
||||
|
||||
Other information:
|
||||
|
||||
libpng-1.0.31rc01-README.txt
|
||||
libpng-1.0.31rc01-KNOWNBUGS.txt
|
||||
libpng-1.0.31rc01-LICENSE.txt
|
||||
libpng-1.0.31rc01-Y2K-compliance.txt
|
||||
libpng-1.0.31-README.txt
|
||||
libpng-1.0.31-KNOWNBUGS.txt
|
||||
libpng-1.0.31-LICENSE.txt
|
||||
libpng-1.0.31-Y2K-compliance.txt
|
||||
|
||||
Changes since the last public release (1.0.30):
|
||||
|
||||
version 1.2.23beta01 [October 15, 2007]
|
||||
Reduced number of invocations of png_strlen() in pngset.c.
|
||||
Changed [azAZ09_] to [_abcde...89] in Makefile.am for better localization.
|
||||
version 1.0.31 [February 18, 2008]
|
||||
|
||||
version 1.2.23beta02 [October 16, 2007]
|
||||
Eliminated png_strncpy() and png_strcpy() (Pierre Poissinger)
|
||||
Changed $AN to $(AN) in Makefile.am.
|
||||
|
||||
version 1.2.23beta03 [October 16, 2007]
|
||||
Fixed off-by-one error in pngset.c
|
||||
Restore statement to set last character of buffer to \0 in pngerror.c
|
||||
|
||||
version 1.2.23beta04 [October 23, 2007]
|
||||
Reject attempt to set all-zero cHRM values.
|
||||
|
||||
version 1.2.23beta05 [October 26, 2007]
|
||||
Add missing quotes in projects/visualc6, lost in version 1.2.20rc3
|
||||
|
||||
version 1.2.24beta01 [November 19, 2007]
|
||||
Moved misplaced test for malloc failure in png_set_sPLT(). This bug was
|
||||
introduced in libpng-1.2.20beta01.
|
||||
Ifdef out avg_row etc from png.h and pngwrite.c when PNG_NO_WRITE_FILTER
|
||||
Do not use png_ptr->free_fn and png_ptr->mem_fn in png_destroy_read_struct()
|
||||
when png_ptr is NULL (Marshall Clow).
|
||||
Updated handling of symbol prefixes in Makefile.am and configure.ac (Mike
|
||||
Frysinger).
|
||||
|
||||
version 1.2.24beta02 [November 30, 2007]
|
||||
Removed a useless test and fixed incorrect test in png_set_cHRM_fixed()
|
||||
(David Hill).
|
||||
|
||||
version 1.2.24rc01 [December 7, 2007]
|
||||
No changes.
|
||||
|
||||
version 1.2.24 [December 14, 2007]]
|
||||
Make sure not to redefine _BSD_SOURCE in pngconf.h
|
||||
Revised gather.sh and makefile.std in contrib/pngminim to avoid compiling
|
||||
unused files.
|
||||
|
||||
version 1.2.25beta01 [January 7, 2008]
|
||||
Fixed bug with unknown chunk handling, introduced in version 1.2.17rc2
|
||||
|
||||
version 1.2.25beta02 [January 10, 2008]
|
||||
Fixed bug with unknown chunk handling, introduced in version 1.2.17
|
||||
Prevent gamma from being applied twice.
|
||||
|
||||
version 1.2.25rc01 [January 17, 2008]
|
||||
No changes.
|
||||
|
||||
Fixed some continue-after-malloc-failure errors in pngset.c (David Hill)
|
||||
Check for info_ptr == NULL in png_read_info() and png_process_data().
|
||||
Check for possible use of NULL user_png_ver[] in png_create_read_struct().
|
||||
Fix overflow of "msg" in png_decompres_chunk().
|
||||
Added libpng-1.2.25.tar.lzma to distribution. Get the lzma codec
|
||||
from <http://tukaani.org/lzma>.
|
||||
Added lpng1225.7z to distribution. Get the 7-zip decoder from
|
||||
from <http://www.7-zip.org>.
|
||||
Fixed some broken links in the README file.
|
||||
Refactored png_read_push_finish_row() slightly, trying to satisfy Coverity.
|
||||
Fixed potential NULL dereference of png_ptr in png_destroy_write_struct();
|
||||
clarified potential NULL dereference of png_ptr in png_destroy_read_struct();
|
||||
fixed potential NULL dereference of info_ptr in png_handle_bKGD();
|
||||
fixed potential NULL dereference of user_png_ver[] in
|
||||
png_create_write_struct_2(). (Coverity)
|
||||
|
||||
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
|
||||
|
||||
(subscription required; visit
|
||||
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
|
||||
to subscribe) or to glennrp at users.sourceforge.net
|
||||
|
||||
35
CHANGES
35
CHANGES
@ -2030,6 +2030,41 @@ version 1.2.25beta02 [January 10, 2008]
|
||||
version 1.2.25rc01 [January 17, 2008]
|
||||
No changes.
|
||||
|
||||
version 1.2.25beta03 [January 22, 2008]
|
||||
Fixed some continue-after-malloc-failure errors in pngset.c (David Hill)
|
||||
Check for info_ptr == NULL in png_read_info() and png_process_data().
|
||||
Check for possible use of NULL user_png_ver[] in png_create_read_struct().
|
||||
Change "if (swidth == NULL)" to "if (sheight == NULL)" in png_handle_sCAL
|
||||
(bug introduced in libpng-1.2.4/1.0.13).
|
||||
Return from png_destroy_read_struct() if png_ptr_ptr is NULL.
|
||||
Fix overflow of "msg" in png_decompres_chunk().
|
||||
|
||||
version 1.2.25beta04 [January 26, 2008]
|
||||
Work around Coverity bug report by slightly refactoring
|
||||
png_read_push_finish_row()
|
||||
|
||||
version 1.2.25beta05 [January 31, 2008]
|
||||
Added libpng-1.2.25beta05.tar.lzma to distribution. Get the lzma codec
|
||||
from <http://tukaani.org/lzma>.
|
||||
Added lp1225b05.7z to distribution. Get the 7-zip decoder from
|
||||
from <http://www.7-zip.org>.
|
||||
Fixed some broken links in the README file.
|
||||
|
||||
version 1.2.25beta06 [February 6, 2008]
|
||||
Refactored png_read_push_finish_row() again, trying to satisfy Coverity.
|
||||
Fixed potential NULL dereference of png_ptr in png_destroy_write_struct();
|
||||
clarified potential NULL dereference of png_ptr in png_destroy_read_struct();
|
||||
fixed potential NULL dereference of info_ptr in png_handle_bKGD();
|
||||
fixed potential NULL dereference of user_png_ver[] in
|
||||
png_create_write_struct_2(). (Coverity)
|
||||
|
||||
version 1.2.25rc02 [February 10, 2008]
|
||||
Reset png_ptr->pass in png_read_push_finish_row() before break.
|
||||
Changed "pass" from png_byte to int.
|
||||
|
||||
version 1.2.25 and 1.0.31 [February 18, 2008]
|
||||
No changes.
|
||||
|
||||
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
|
||||
(subscription required; visit
|
||||
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
|
||||
|
||||
16
INSTALL
16
INSTALL
@ -1,5 +1,5 @@
|
||||
|
||||
Installing libpng version 1.0.31rc01 - January 17, 2008
|
||||
Installing libpng version 1.0.31 - February 18, 2008
|
||||
|
||||
On Unix/Linux and similar systems, you can simply type
|
||||
|
||||
@ -44,7 +44,7 @@ to have access to the 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.0.31rc01" or "lpng109" and "zlib-1.2.1"
|
||||
might be called "libpng-1.0.31" 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,9 +101,9 @@ include
|
||||
CMakeLists.txt => "cmake" script
|
||||
makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
|
||||
makefile.elf => Linux/ELF makefile symbol versioning,
|
||||
gcc, creates libpng10.so.0.1.0.31rc01)
|
||||
gcc, creates libpng10.so.0.1.0.31)
|
||||
makefile.linux => Linux/ELF makefile
|
||||
(gcc, creates libpng10.so.0.1.0.31rc01)
|
||||
(gcc, creates libpng10.so.0.1.0.31)
|
||||
makefile.gcc => Generic makefile (gcc, creates static libpng.a)
|
||||
makefile.knr => Archaic UNIX Makefile that converts files with
|
||||
ansi2knr (Requires ansi2knr.c from
|
||||
@ -125,14 +125,14 @@ include
|
||||
makefile.openbsd => OpenBSD makefile
|
||||
makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib)
|
||||
makefile.sggcc => Silicon Graphics (gcc,
|
||||
creates libpng10.so.0.1.0.31rc01)
|
||||
creates libpng10.so.0.1.0.31)
|
||||
makefile.sunos => Sun makefile
|
||||
makefile.solaris => Solaris 2.X makefile (gcc,
|
||||
creates libpng10.so.0.1.0.31rc01)
|
||||
creates libpng10.so.0.1.0.31)
|
||||
makefile.solaris-x86 => Solaris/intelMMX 2.X makefile (gcc,
|
||||
creates libpng10.so.0.1.0.31rc01)
|
||||
creates libpng10.so.0.1.0.31)
|
||||
makefile.so9 => Solaris 9 makefile (gcc,
|
||||
creates libpng10.so.0.1.0.31rc01)
|
||||
creates libpng10.so.0.1.0.31)
|
||||
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
|
||||
|
||||
2
KNOWNBUG
2
KNOWNBUG
@ -1,5 +1,5 @@
|
||||
|
||||
Known bugs in libpng version 1.0.31rc01
|
||||
Known bugs in libpng version 1.0.31
|
||||
|
||||
1. February 23, 2006: The custom makefiles don't build libpng with -lz.
|
||||
|
||||
|
||||
4
LICENSE
4
LICENSE
@ -8,7 +8,7 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE:
|
||||
If you modify libpng you may insert additional notices immediately following
|
||||
this sentence.
|
||||
|
||||
libpng versions 1.2.6, August 15, 2004, through 1.0.31rc01, January 17, 2008, are
|
||||
libpng versions 1.2.6, August 15, 2004, through 1.0.31, February 18, 2008, are
|
||||
Copyright (c) 2004, 2006-2008 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 @@ certification mark of the Open Source Initiative.
|
||||
|
||||
Glenn Randers-Pehrson
|
||||
glennrp at users.sourceforge.net
|
||||
January 17, 2008
|
||||
February 18, 2008
|
||||
|
||||
29
README
29
README
@ -1,11 +1,12 @@
|
||||
README for libpng version 1.0.31rc01 - January 17, 2008 (shared library 10.0)
|
||||
README for libpng version 1.0.31 - February 18, 2008 (shared library 10.0)
|
||||
See the note about version numbers near the top of png.h
|
||||
|
||||
See INSTALL for instructions on how to install libpng.
|
||||
|
||||
Libpng comes in several distribution formats. Get libpng-*.tar.gz
|
||||
or libpng-*.tar.bz2 if you want UNIX-style line endings in the text
|
||||
files, or lpng*.zip if you want DOS-style line endings.
|
||||
Libpng comes in several distribution formats. Get libpng-*.tar.gz,
|
||||
libpng-*.tar.lzma, or libpng-*.tar.bz2 if you want UNIX-style line
|
||||
endings in the text files, or lpng*.7z lpng*.zip if you want DOS-style
|
||||
line endings.
|
||||
|
||||
Version 0.89 was the first official release of libpng. Don't let the
|
||||
fact that it's the first release fool you. The libpng library has been in
|
||||
@ -77,12 +78,12 @@ compression library that is useful for more things than just PNG files.
|
||||
You can use zlib as a drop-in replacement for fread() and fwrite() if
|
||||
you are so inclined.
|
||||
|
||||
zlib should be available at the same place that libpng is, or at.
|
||||
ftp://ftp.info-zip.org/pub/infozip/zlib
|
||||
zlib should be available at the same place that libpng is, or at
|
||||
ftp://ftp.simplesystems.org/pub/png/src/
|
||||
|
||||
You may also want a copy of the PNG specification. It is available
|
||||
as an RFC, a W3C Recommendation, and an ISO/IEC Standard. You can find
|
||||
these at http://www.libpng.org/pub/png/documents/
|
||||
these at http://www.libpng.org/pub/png/pngdocs.html
|
||||
|
||||
This code is currently being archived at libpng.sf.net in the
|
||||
[DOWNLOAD] area, and on CompuServe, Lib 20 (PNG SUPPORT)
|
||||
@ -190,11 +191,11 @@ Files in this distribution:
|
||||
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 libpng10.so.0.1.0.31rc01)
|
||||
gcc, creates libpng10.so.0.1.0.31)
|
||||
makefile.linux => Linux/ELF makefile
|
||||
(gcc, creates libpng10.so.0.1.0.31rc01)
|
||||
(gcc, creates libpng10.so.0.1.0.31)
|
||||
makefile.gcmmx => Linux/ELF makefile
|
||||
(gcc, creates libpng10.so.0.1.0.31rc01,
|
||||
(gcc, creates libpng10.so.0.1.0.31,
|
||||
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 +217,12 @@ Files in this distribution:
|
||||
makefile.openbsd => OpenBSD makefile
|
||||
makefile.sgi => Silicon Graphics IRIX (cc, creates static lib)
|
||||
makefile.sggcc => Silicon Graphics
|
||||
(gcc, creates libpng10.so.0.1.0.31rc01)
|
||||
(gcc, creates libpng10.so.0.1.0.31)
|
||||
makefile.sunos => Sun makefile
|
||||
makefile.solaris => Solaris 2.X makefile
|
||||
(gcc, creates libpng10.so.0.1.0.31rc01)
|
||||
(gcc, creates libpng10.so.0.1.0.31)
|
||||
makefile.so9 => Solaris 9 makefile
|
||||
(gcc, creates libpng10.so.0.1.0.31rc01)
|
||||
(gcc, creates libpng10.so.0.1.0.31)
|
||||
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
|
||||
@ -256,7 +257,7 @@ Good luck, and happy coding.
|
||||
|
||||
-Andreas Eric Dilger (former maintainer, 1996-1997)
|
||||
Internet: adilger at enel.ucalgary.ca
|
||||
Web: http://www-mddsp.enel.ucalgary.ca/People/adilger/
|
||||
Web: http://members.shaw.ca/adilger/
|
||||
|
||||
-Guy Eric Schalnat (original author and former maintainer, 1995-1996)
|
||||
(formerly of Group 42, Inc)
|
||||
|
||||
4
Y2KINFO
4
Y2KINFO
@ -1,13 +1,13 @@
|
||||
Y2K compliance in libpng:
|
||||
=========================
|
||||
|
||||
January 17, 2008
|
||||
February 18, 2008
|
||||
|
||||
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.0.31rc01 are Y2K compliant. It is my belief that earlier
|
||||
upward through 1.0.31 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
|
||||
|
||||
22
configure
vendored
22
configure
vendored
@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.61 for libpng 1.0.31rc01.
|
||||
# Generated by GNU Autoconf 2.61 for libpng 1.0.31.
|
||||
#
|
||||
# Report bugs to <png-mng-implement@lists.sourceforge.net>.
|
||||
#
|
||||
@ -728,8 +728,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
|
||||
# Identity of this package.
|
||||
PACKAGE_NAME='libpng'
|
||||
PACKAGE_TARNAME='libpng'
|
||||
PACKAGE_VERSION='1.0.31rc01'
|
||||
PACKAGE_STRING='libpng 1.0.31rc01'
|
||||
PACKAGE_VERSION='1.0.31'
|
||||
PACKAGE_STRING='libpng 1.0.31'
|
||||
PACKAGE_BUGREPORT='png-mng-implement@lists.sourceforge.net'
|
||||
|
||||
ac_unique_file="pngget.c"
|
||||
@ -1406,7 +1406,7 @@ if test "$ac_init_help" = "long"; then
|
||||
# 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.0.31rc01 to adapt to many kinds of systems.
|
||||
\`configure' configures libpng 1.0.31 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
@ -1476,7 +1476,7 @@ fi
|
||||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of libpng 1.0.31rc01:";;
|
||||
short | recursive ) echo "Configuration of libpng 1.0.31:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
@ -1586,7 +1586,7 @@ fi
|
||||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
libpng configure 1.0.31rc01
|
||||
libpng configure 1.0.31
|
||||
generated by GNU Autoconf 2.61
|
||||
|
||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
|
||||
@ -1600,7 +1600,7 @@ cat >config.log <<_ACEOF
|
||||
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.0.31rc01, which was
|
||||
It was created by libpng $as_me 1.0.31, which was
|
||||
generated by GNU Autoconf 2.61. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
@ -2270,7 +2270,7 @@ fi
|
||||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='libpng'
|
||||
VERSION='1.0.31rc01'
|
||||
VERSION='1.0.31'
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
@ -2441,7 +2441,7 @@ fi
|
||||
|
||||
|
||||
|
||||
PNGLIB_VERSION=1.0.31rc01
|
||||
PNGLIB_VERSION=1.0.31
|
||||
PNGLIB_MAJOR=1
|
||||
PNGLIB_MINOR=0
|
||||
PNGLIB_RELEASE=31
|
||||
@ -21295,7 +21295,7 @@ exec 6>&1
|
||||
# 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.0.31rc01, which was
|
||||
This file was extended by libpng $as_me 1.0.31, which was
|
||||
generated by GNU Autoconf 2.61. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
@ -21348,7 +21348,7 @@ Report bugs to <bug-autoconf@gnu.org>."
|
||||
_ACEOF
|
||||
cat >>$CONFIG_STATUS <<_ACEOF
|
||||
ac_cs_version="\\
|
||||
libpng config.status 1.0.31rc01
|
||||
libpng config.status 1.0.31
|
||||
configured by $0, generated by GNU Autoconf 2.61,
|
||||
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
|
||||
|
||||
|
||||
@ -18,12 +18,12 @@ AC_PREREQ(2.59)
|
||||
|
||||
dnl Version number stuff here:
|
||||
|
||||
AC_INIT([libpng], [1.0.31rc01], [png-mng-implement@lists.sourceforge.net])
|
||||
AC_INIT([libpng], [1.0.31], [png-mng-implement@lists.sourceforge.net])
|
||||
AM_INIT_AUTOMAKE
|
||||
dnl stop configure from automagically running automake
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
PNGLIB_VERSION=1.0.31rc01
|
||||
PNGLIB_VERSION=1.0.31
|
||||
PNGLIB_MAJOR=1
|
||||
PNGLIB_MINOR=0
|
||||
PNGLIB_RELEASE=31
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
libpng.txt - A description on how to use and modify libpng
|
||||
|
||||
libpng version 1.0.31rc01 - January 17, 2008
|
||||
libpng version 1.0.31 - February 18, 2008
|
||||
Updated and distributed by Glenn Randers-Pehrson
|
||||
<glennrp at users.sourceforge.net>
|
||||
Copyright (c) 1998-2008 Glenn Randers-Pehrson
|
||||
@ -2760,13 +2760,13 @@ application:
|
||||
|
||||
VIII. Y2K Compliance in libpng
|
||||
|
||||
January 17, 2008
|
||||
February 18, 2008
|
||||
|
||||
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.0.31rc01 are Y2K compliant. It is my belief that earlier
|
||||
upward through 1.0.31 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
|
||||
19
libpng.3
19
libpng.3
@ -1,6 +1,6 @@
|
||||
.TH LIBPNG 3 "January 17, 2008"
|
||||
.TH LIBPNG 3 "February 18, 2008"
|
||||
.SH NAME
|
||||
libpng \- Portable Network Graphics (PNG) Reference Library 1.0.31rc01
|
||||
libpng \- Portable Network Graphics (PNG) Reference Library 1.0.31
|
||||
.SH SYNOPSIS
|
||||
\fB
|
||||
#include <png.h>\fP
|
||||
@ -410,7 +410,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.0.31rc01 - January 17, 2008
|
||||
libpng version 1.0.31 - February 18, 2008
|
||||
Updated and distributed by Glenn Randers-Pehrson
|
||||
<glennrp at users.sourceforge.net>
|
||||
Copyright (c) 1998-2008 Glenn Randers-Pehrson
|
||||
@ -3170,13 +3170,13 @@ application:
|
||||
|
||||
.SH VIII. Y2K Compliance in libpng
|
||||
|
||||
January 17, 2008
|
||||
February 18, 2008
|
||||
|
||||
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.0.31rc01 are Y2K compliant. It is my belief that earlier
|
||||
upward through 1.0.31 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
|
||||
@ -3390,7 +3390,8 @@ the first widely used release:
|
||||
1.2.24beta01-02 13 10224 12.so.0.24[.0]
|
||||
1.2.24rc01 13 10224 12.so.0.24[.0]
|
||||
1.2.24 13 10224 12.so.0.24[.0]
|
||||
1.2.25beta01-02 13 10225 12.so.0.25[.0]
|
||||
1.2.25beta01-06 13 10225 12.so.0.25[.0]
|
||||
1.2.25rc01-02 13 10225 12.so.0.25[.0]
|
||||
|
||||
Henceforth the source version will match the shared-library minor
|
||||
and patch numbers; the shared-library major version number will be
|
||||
@ -3446,7 +3447,7 @@ possible without all of you.
|
||||
|
||||
Thanks to Frank J. T. Wojcik for helping with the documentation.
|
||||
|
||||
Libpng version 1.0.31rc01 - January 17, 2008:
|
||||
Libpng version 1.0.31 - February 18, 2008:
|
||||
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
|
||||
Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
|
||||
|
||||
@ -3467,7 +3468,7 @@ included in the libpng distribution, the latter shall prevail.)
|
||||
If you modify libpng you may insert additional notices immediately following
|
||||
this sentence.
|
||||
|
||||
libpng versions 1.2.6, August 15, 2004, through 1.0.31rc01, January 17, 2008, are
|
||||
libpng versions 1.2.6, August 15, 2004, through 1.0.31, February 18, 2008, are
|
||||
Copyright (c) 2004,2006-2008 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
|
||||
@ -3566,7 +3567,7 @@ certification mark of the Open Source Initiative.
|
||||
|
||||
Glenn Randers-Pehrson
|
||||
glennrp at users.sourceforge.net
|
||||
January 17, 2008
|
||||
February 18, 2008
|
||||
|
||||
.\" end of man page
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
.TH LIBPNGPF 3 "January 17, 2008"
|
||||
.TH LIBPNGPF 3 "February 18, 2008"
|
||||
.SH NAME
|
||||
libpng \- Portable Network Graphics (PNG) Reference Library 1.0.31rc01
|
||||
libpng \- Portable Network Graphics (PNG) Reference Library 1.0.31
|
||||
(private functions)
|
||||
.SH SYNOPSIS
|
||||
\fB#include <png.h>\fP
|
||||
|
||||
2
png.5
2
png.5
@ -1,4 +1,4 @@
|
||||
.TH PNG 5 "January 17, 2008"
|
||||
.TH PNG 5 "February 18, 2008"
|
||||
.SH NAME
|
||||
png \- Portable Network Graphics (PNG) format
|
||||
.SH DESCRIPTION
|
||||
|
||||
6
png.c
6
png.c
@ -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_0_31rc01 Your_png_h_is_not_version_1_0_31rc01;
|
||||
typedef version_1_0_31 Your_png_h_is_not_version_1_0_31;
|
||||
|
||||
/* Version information for C files. This had better match the version
|
||||
* string defined in png.h. */
|
||||
@ -693,8 +693,8 @@ png_charp PNGAPI
|
||||
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.0.31rc01 - January 17, 2008\n\
|
||||
Copyright (c) 1998-2007 Glenn Randers-Pehrson\n\
|
||||
return ((png_charp) "\n libpng version 1.0.31 - February 18, 2008\n\
|
||||
Copyright (c) 1998-2008 Glenn Randers-Pehrson\n\
|
||||
Copyright (c) 1996-1997 Andreas Dilger\n\
|
||||
Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.\n");
|
||||
}
|
||||
|
||||
23
png.h
23
png.h
@ -1,7 +1,7 @@
|
||||
|
||||
/* png.h - header file for PNG reference library
|
||||
*
|
||||
* libpng version 1.0.31rc01 - January 17, 2008
|
||||
* libpng version 1.0.31 - February 18, 2008
|
||||
* Copyright (c) 1998-2008 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.0.31rc01 - January 17, 2008: Glenn
|
||||
* libpng versions 0.97, January 1998, through 1.0.31 - February 18, 2008: Glenn
|
||||
* See also "Contributing Authors", below.
|
||||
*
|
||||
* Note about libpng version numbers:
|
||||
@ -175,7 +175,8 @@
|
||||
* 1.2.24beta01-02 13 10224 12.so.0.24[.0]
|
||||
* 1.2.24rc01 13 10224 12.so.0.24[.0]
|
||||
* 1.2.24 13 10224 12.so.0.24[.0]
|
||||
* 1.2.25beta01-02 13 10225 12.so.0.25[.0]
|
||||
* 1.2.25beta01-06 13 10225 12.so.0.25[.0]
|
||||
* 1.2.25rc01-02 13 10225 12.so.0.25[.0]
|
||||
*
|
||||
* Henceforth the source version will match the shared-library major
|
||||
* and minor numbers; the shared-library major version number will be
|
||||
@ -205,7 +206,7 @@
|
||||
* If you modify libpng you may insert additional notices immediately following
|
||||
* this sentence.
|
||||
*
|
||||
* libpng versions 1.2.6, August 15, 2004, through 1.0.31rc01, January 17, 2008, are
|
||||
* libpng versions 1.2.6, August 15, 2004, through 1.0.31, February 18, 2008, are
|
||||
* Copyright (c) 2004, 2006-2008 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:
|
||||
@ -317,13 +318,13 @@
|
||||
* Y2K compliance in libpng:
|
||||
* =========================
|
||||
*
|
||||
* January 17, 2008
|
||||
* February 18, 2008
|
||||
*
|
||||
* 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.0.31rc01 are Y2K compliant. It is my belief that earlier
|
||||
* upward through 1.0.31 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
|
||||
@ -379,9 +380,9 @@
|
||||
*/
|
||||
|
||||
/* Version information for png.h - this should match the version in png.c */
|
||||
#define PNG_LIBPNG_VER_STRING "1.0.31rc01"
|
||||
#define PNG_LIBPNG_VER_STRING "1.0.31"
|
||||
#define PNG_HEADER_VERSION_STRING \
|
||||
" libpng version 1.0.31rc01 - January 17, 2008\n"
|
||||
" libpng version 1.0.31 - February 18, 2008\n"
|
||||
|
||||
#define PNG_LIBPNG_VER_SONUM 0
|
||||
#define PNG_LIBPNG_VER_DLLNUM 10
|
||||
@ -393,7 +394,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 01
|
||||
#define PNG_LIBPNG_VER_BUILD 0
|
||||
|
||||
/* Release Status */
|
||||
#define PNG_LIBPNG_BUILD_ALPHA 1
|
||||
@ -410,7 +411,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_RC
|
||||
#define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_STABLE
|
||||
|
||||
/* Careful here. At one time, Guy wanted to use 082, but that would be octal.
|
||||
* We must not include leading zeros.
|
||||
@ -1431,7 +1432,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_0_31rc01;
|
||||
typedef png_structp version_1_0_31;
|
||||
|
||||
typedef png_struct FAR * FAR * png_structpp;
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
|
||||
/* pngconf.h - machine configurable file for libpng
|
||||
*
|
||||
* libpng version 1.0.31rc01 - January 17, 2008
|
||||
* libpng version 1.0.31 - February 18, 2008
|
||||
* For conditions of distribution and use, see copyright notice in png.h
|
||||
* Copyright (c) 1998-2008 Glenn Randers-Pehrson
|
||||
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
|
||||
|
||||
53
pngpread.c
53
pngpread.c
@ -1,7 +1,7 @@
|
||||
|
||||
/* pngpread.c - read a png file in push mode
|
||||
*
|
||||
* Last changed in libpng 1.2.25 [January 17, 2008]
|
||||
* Last changed in libpng 1.2.25 [February 18, 2008]
|
||||
* For conditions of distribution and use, see copyright notice in png.h
|
||||
* Copyright (c) 1998-2008 Glenn Randers-Pehrson
|
||||
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
|
||||
@ -28,7 +28,7 @@ void PNGAPI
|
||||
png_process_data(png_structp png_ptr, png_infop info_ptr,
|
||||
png_bytep buffer, png_size_t buffer_size)
|
||||
{
|
||||
if(png_ptr == NULL) return;
|
||||
if(png_ptr == NULL || info_ptr == NULL) return;
|
||||
png_push_restore_buffer(png_ptr, buffer, buffer_size);
|
||||
|
||||
while (png_ptr->buffer_size)
|
||||
@ -1018,32 +1018,37 @@ png_read_push_finish_row(png_structp png_ptr)
|
||||
png_ptr->rowbytes + 1);
|
||||
do
|
||||
{
|
||||
png_ptr->pass++;
|
||||
if ((png_ptr->pass == 1 && png_ptr->width < 5) ||
|
||||
(png_ptr->pass == 3 && png_ptr->width < 3) ||
|
||||
(png_ptr->pass == 5 && png_ptr->width < 2))
|
||||
png_ptr->pass++;
|
||||
int pass;
|
||||
pass = png_ptr->pass;
|
||||
pass++;
|
||||
if ((pass == 1 && png_ptr->width < 5) ||
|
||||
(pass == 3 && png_ptr->width < 3) ||
|
||||
(pass == 5 && png_ptr->width < 2))
|
||||
pass++;
|
||||
|
||||
if (png_ptr->pass > 7)
|
||||
png_ptr->pass--;
|
||||
if (png_ptr->pass >= 7)
|
||||
break;
|
||||
if (pass > 7)
|
||||
pass--;
|
||||
png_ptr->pass = (png_byte) pass;
|
||||
if (pass < 7)
|
||||
{
|
||||
png_ptr->iwidth = (png_ptr->width +
|
||||
png_pass_inc[pass] - 1 -
|
||||
png_pass_start[pass]) /
|
||||
png_pass_inc[pass];
|
||||
|
||||
png_ptr->iwidth = (png_ptr->width +
|
||||
png_pass_inc[png_ptr->pass] - 1 -
|
||||
png_pass_start[png_ptr->pass]) /
|
||||
png_pass_inc[png_ptr->pass];
|
||||
png_ptr->irowbytes = PNG_ROWBYTES(png_ptr->pixel_depth,
|
||||
png_ptr->iwidth) + 1;
|
||||
|
||||
png_ptr->irowbytes = PNG_ROWBYTES(png_ptr->pixel_depth,
|
||||
png_ptr->iwidth) + 1;
|
||||
if (png_ptr->transformations & PNG_INTERLACE)
|
||||
break;
|
||||
|
||||
if (png_ptr->transformations & PNG_INTERLACE)
|
||||
break;
|
||||
|
||||
png_ptr->num_rows = (png_ptr->height +
|
||||
png_pass_yinc[png_ptr->pass] - 1 -
|
||||
png_pass_ystart[png_ptr->pass]) /
|
||||
png_pass_yinc[png_ptr->pass];
|
||||
png_ptr->num_rows = (png_ptr->height +
|
||||
png_pass_yinc[pass] - 1 -
|
||||
png_pass_ystart[pass]) /
|
||||
png_pass_yinc[pass];
|
||||
}
|
||||
else
|
||||
break;
|
||||
|
||||
} while (png_ptr->iwidth == 0 || png_ptr->num_rows == 0);
|
||||
}
|
||||
|
||||
42
pngread.c
42
pngread.c
@ -1,9 +1,9 @@
|
||||
|
||||
/* pngread.c - read a PNG file
|
||||
*
|
||||
* Last changed in libpng 1.2.24 [December 14, 2007]
|
||||
* Last changed in libpng 1.2.25 [February 18, 2008]
|
||||
* For conditions of distribution and use, see copyright notice in png.h
|
||||
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
|
||||
* Copyright (c) 1998-2008 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.)
|
||||
*
|
||||
@ -89,12 +89,18 @@ png_create_read_struct_2(png_const_charp user_png_ver, png_voidp error_ptr,
|
||||
|
||||
png_set_error_fn(png_ptr, error_ptr, error_fn, warn_fn);
|
||||
|
||||
i=0;
|
||||
do
|
||||
if(user_png_ver)
|
||||
{
|
||||
if(user_png_ver[i] != png_libpng_ver[i])
|
||||
i=0;
|
||||
do
|
||||
{
|
||||
if(user_png_ver[i] != png_libpng_ver[i])
|
||||
png_ptr->flags |= PNG_FLAG_LIBRARY_MISMATCH;
|
||||
} while (png_libpng_ver[i++]);
|
||||
}
|
||||
else
|
||||
png_ptr->flags |= PNG_FLAG_LIBRARY_MISMATCH;
|
||||
} while (png_libpng_ver[i++]);
|
||||
|
||||
|
||||
if (png_ptr->flags & PNG_FLAG_LIBRARY_MISMATCH)
|
||||
{
|
||||
@ -318,7 +324,7 @@ png_read_init_3(png_structpp ptr_ptr, png_const_charp user_png_ver,
|
||||
void PNGAPI
|
||||
png_read_info(png_structp png_ptr, png_infop info_ptr)
|
||||
{
|
||||
if(png_ptr == NULL) return;
|
||||
if(png_ptr == NULL || info_ptr == NULL) return;
|
||||
png_debug(1, "in png_read_info\n");
|
||||
/* If we haven't checked all of the PNG signature bytes, do so now. */
|
||||
if (png_ptr->sig_bytes < 8)
|
||||
@ -1107,11 +1113,14 @@ png_destroy_read_struct(png_structpp png_ptr_ptr, png_infopp info_ptr_ptr,
|
||||
if (png_ptr_ptr != NULL)
|
||||
{
|
||||
png_ptr = *png_ptr_ptr;
|
||||
#ifdef PNG_USER_MEM_SUPPORTED
|
||||
free_fn = png_ptr->free_fn;
|
||||
mem_ptr = png_ptr->mem_ptr;
|
||||
#endif
|
||||
}
|
||||
if (png_ptr == NULL)
|
||||
return;
|
||||
|
||||
#ifdef PNG_USER_MEM_SUPPORTED
|
||||
free_fn = png_ptr->free_fn;
|
||||
mem_ptr = png_ptr->mem_ptr;
|
||||
#endif
|
||||
|
||||
if (info_ptr_ptr != NULL)
|
||||
info_ptr = *info_ptr_ptr;
|
||||
@ -1150,16 +1159,13 @@ png_destroy_read_struct(png_structpp png_ptr_ptr, png_infopp info_ptr_ptr,
|
||||
*end_info_ptr_ptr = NULL;
|
||||
}
|
||||
|
||||
if (png_ptr != NULL)
|
||||
{
|
||||
#ifdef PNG_USER_MEM_SUPPORTED
|
||||
png_destroy_struct_2((png_voidp)png_ptr, (png_free_ptr)free_fn,
|
||||
(png_voidp)mem_ptr);
|
||||
png_destroy_struct_2((png_voidp)png_ptr, (png_free_ptr)free_fn,
|
||||
(png_voidp)mem_ptr);
|
||||
#else
|
||||
png_destroy_struct((png_voidp)png_ptr);
|
||||
png_destroy_struct((png_voidp)png_ptr);
|
||||
#endif
|
||||
*png_ptr_ptr = NULL;
|
||||
}
|
||||
*png_ptr_ptr = NULL;
|
||||
}
|
||||
|
||||
/* free all memory used by the read (old method) */
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
|
||||
/* pngrtran.c - transforms the data in a row for PNG readers
|
||||
*
|
||||
* Last changed in libpng 1.2.25 [January 17, 2008]
|
||||
* Last changed in libpng 1.2.25 [February 18, 2008]
|
||||
* For conditions of distribution and use, see copyright notice in png.h
|
||||
* Copyright (c) 1998-2008 Glenn Randers-Pehrson
|
||||
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
|
||||
/* pngrutil.c - utilities to read a PNG file
|
||||
*
|
||||
* Last changed in libpng 1.2.25 [January 17, 2008]
|
||||
* Last changed in libpng 1.2.25 [February 18, 2008]
|
||||
* For conditions of distribution and use, see copyright notice in png.h
|
||||
* Copyright (c) 1998-2008 Glenn Randers-Pehrson
|
||||
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
|
||||
@ -230,7 +230,7 @@ png_decompress_chunk(png_structp png_ptr, int comp_type,
|
||||
text_size = (png_size_t)(chunklength - (text - chunkdata) - 1);
|
||||
text_size = png_sizeof(msg) > text_size ? text_size :
|
||||
png_sizeof(msg);
|
||||
png_memcpy(text + prefix_size, msg, text_size + 1);
|
||||
png_memcpy(text + prefix_size, msg, text_size);
|
||||
break;
|
||||
}
|
||||
if (!png_ptr->zstream.avail_out || ret == Z_STREAM_END)
|
||||
@ -1393,7 +1393,7 @@ png_handle_bKGD(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
|
||||
if (png_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
|
||||
{
|
||||
png_ptr->background.index = buf[0];
|
||||
if(info_ptr->num_palette)
|
||||
if (info_ptr && info_ptr->num_palette)
|
||||
{
|
||||
if(buf[0] > info_ptr->num_palette)
|
||||
{
|
||||
@ -1792,7 +1792,7 @@ png_handle_sCAL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
|
||||
#else
|
||||
#ifdef PNG_FIXED_POINT_SUPPORTED
|
||||
sheight = (png_charp)png_malloc_warn(png_ptr, png_strlen(ep) + 1);
|
||||
if (swidth == NULL)
|
||||
if (sheight == NULL)
|
||||
{
|
||||
png_warning(png_ptr, "Out of memory while processing sCAL chunk height");
|
||||
return;
|
||||
|
||||
9
pngset.c
9
pngset.c
@ -1,9 +1,9 @@
|
||||
|
||||
/* pngset.c - storage of image information into info struct
|
||||
*
|
||||
* Last changed in libpng 1.2.24 [December 14, 2007]
|
||||
* Last changed in libpng 1.2.25 [February 18, 2008]
|
||||
* For conditions of distribution and use, see copyright notice in png.h
|
||||
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
|
||||
* Copyright (c) 1998-2008 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.)
|
||||
*
|
||||
@ -488,6 +488,7 @@ png_set_sCAL_s(png_structp png_ptr, png_infop info_ptr,
|
||||
{
|
||||
png_warning(png_ptr,
|
||||
"Memory allocation failed while processing sCAL.");
|
||||
return;
|
||||
}
|
||||
png_memcpy(info_ptr->scal_s_width, swidth, (png_size_t)length);
|
||||
|
||||
@ -499,9 +500,9 @@ png_set_sCAL_s(png_structp png_ptr, png_infop info_ptr,
|
||||
png_free (png_ptr, info_ptr->scal_s_width);
|
||||
png_warning(png_ptr,
|
||||
"Memory allocation failed while processing sCAL.");
|
||||
return;
|
||||
}
|
||||
png_memcpy(info_ptr->scal_s_height, sheight, (png_size_t)length);
|
||||
|
||||
info_ptr->valid |= PNG_INFO_sCAL;
|
||||
#ifdef PNG_FREE_ME_SUPPORTED
|
||||
info_ptr->free_me |= PNG_FREE_SCAL;
|
||||
@ -983,6 +984,7 @@ png_set_sPLT(png_structp png_ptr,
|
||||
{
|
||||
png_warning(png_ptr,
|
||||
"Out of memory while processing sPLT chunk");
|
||||
continue;
|
||||
}
|
||||
png_memcpy(to->name, from->name, length);
|
||||
to->entries = (png_sPLT_entryp)png_malloc_warn(png_ptr,
|
||||
@ -993,6 +995,7 @@ png_set_sPLT(png_structp png_ptr,
|
||||
"Out of memory while processing sPLT chunk");
|
||||
png_free(png_ptr,to->name);
|
||||
to->name = NULL;
|
||||
continue;
|
||||
}
|
||||
png_memcpy(to->entries, from->entries,
|
||||
from->nentries * png_sizeof(png_sPLT_entry));
|
||||
|
||||
@ -1553,4 +1553,4 @@ main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
/* Generate a compiler error if there is an old png.h in the search path. */
|
||||
typedef version_1_0_31rc01 your_png_h_is_not_version_1_0_31rc01;
|
||||
typedef version_1_0_31 your_png_h_is_not_version_1_0_31;
|
||||
|
||||
42
pngwrite.c
42
pngwrite.c
@ -1,9 +1,9 @@
|
||||
|
||||
/* pngwrite.c - general routines to write a PNG file
|
||||
*
|
||||
* Last changed in libpng 1.2.24 [December 14, 2007]
|
||||
* Last changed in libpng 1.2.25 [February 18, 2008]
|
||||
* For conditions of distribution and use, see copyright notice in png.h
|
||||
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
|
||||
* Copyright (c) 1998-2008 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.)
|
||||
*/
|
||||
@ -482,12 +482,15 @@ png_create_write_struct_2(png_const_charp user_png_ver, png_voidp error_ptr,
|
||||
#endif /* PNG_USER_MEM_SUPPORTED */
|
||||
png_set_error_fn(png_ptr, error_ptr, error_fn, warn_fn);
|
||||
|
||||
i=0;
|
||||
do
|
||||
if(user_png_ver)
|
||||
{
|
||||
if(user_png_ver[i] != png_libpng_ver[i])
|
||||
png_ptr->flags |= PNG_FLAG_LIBRARY_MISMATCH;
|
||||
} while (png_libpng_ver[i++]);
|
||||
i=0;
|
||||
do
|
||||
{
|
||||
if(user_png_ver[i] != png_libpng_ver[i])
|
||||
png_ptr->flags |= PNG_FLAG_LIBRARY_MISMATCH;
|
||||
} while (png_libpng_ver[i++]);
|
||||
}
|
||||
|
||||
if (png_ptr->flags & PNG_FLAG_LIBRARY_MISMATCH)
|
||||
{
|
||||
@ -1000,21 +1003,32 @@ png_destroy_write_struct(png_structpp png_ptr_ptr, png_infopp info_ptr_ptr)
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef PNG_USER_MEM_SUPPORTED
|
||||
if (png_ptr != NULL)
|
||||
{
|
||||
free_fn = png_ptr->free_fn;
|
||||
mem_ptr = png_ptr->mem_ptr;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (info_ptr_ptr != NULL)
|
||||
info_ptr = *info_ptr_ptr;
|
||||
|
||||
if (info_ptr != NULL)
|
||||
{
|
||||
png_free_data(png_ptr, info_ptr, PNG_FREE_ALL, -1);
|
||||
if (png_ptr != NULL)
|
||||
{
|
||||
png_free_data(png_ptr, info_ptr, PNG_FREE_ALL, -1);
|
||||
|
||||
#if defined(PNG_UNKNOWN_CHUNKS_SUPPORTED)
|
||||
if (png_ptr->num_chunk_list)
|
||||
{
|
||||
png_free(png_ptr, png_ptr->chunk_list);
|
||||
png_ptr->chunk_list=NULL;
|
||||
png_ptr->num_chunk_list=0;
|
||||
}
|
||||
if (png_ptr->num_chunk_list)
|
||||
{
|
||||
png_free(png_ptr, png_ptr->chunk_list);
|
||||
png_ptr->chunk_list=NULL;
|
||||
png_ptr->num_chunk_list=0;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef PNG_USER_MEM_SUPPORTED
|
||||
png_destroy_struct_2((png_voidp)info_ptr, (png_free_ptr)free_fn,
|
||||
|
||||
@ -169,7 +169,7 @@ configure_file(${PNG_SOURCE_DIR}/scripts/libpng-config.in
|
||||
|
||||
# SET UP LINKS
|
||||
set_target_properties(${PNG_LIB_NAME} PROPERTIES
|
||||
# VERSION 0.${PNGLIB_RELEASE}.1.0.31rc01
|
||||
# VERSION 0.${PNGLIB_RELEASE}.1.0.31
|
||||
VERSION 0.${PNGLIB_RELEASE}.0
|
||||
SOVERSION 0
|
||||
CLEAN_DIRECT_OUTPUT 1)
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
|
||||
# Modeled after libxml-config.
|
||||
|
||||
version=1.0.31rc01
|
||||
version=1.0.31
|
||||
prefix=""
|
||||
libdir=""
|
||||
libs=""
|
||||
|
||||
@ -5,6 +5,6 @@ includedir=@includedir@/libpng10
|
||||
|
||||
Name: libpng
|
||||
Description: Loads and saves PNG files
|
||||
Version: 1.0.31rc01
|
||||
Version: 1.0.31
|
||||
Libs: -L${libdir} -lpng10
|
||||
Cflags: -I${includedir} @LIBPNG_NO_MMX@
|
||||
|
||||
@ -5,6 +5,6 @@ includedir=@includedir@/libpng10
|
||||
|
||||
Name: libpng
|
||||
Description: Loads and saves PNG files
|
||||
Version: 1.0.31rc01
|
||||
Version: 1.0.31
|
||||
Libs: -L${libdir} -lpng10
|
||||
Cflags: -I${includedir}
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
# Library name:
|
||||
LIBNAME=libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
# Library name:
|
||||
LIBNAME=libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -20,7 +20,7 @@ LN_SF = ln -f -s
|
||||
|
||||
LIBNAME=libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
prefix=/usr/local
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
# Library name:
|
||||
LIBNAME=libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -74,7 +74,7 @@ CFLAGS= $(strip $(MINGW_CCFLAGS) $(addprefix -I,$(ZLIBINC)) \
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
CYGDLL = 10
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
SHAREDLIB=cygpng$(CYGDLL).dll
|
||||
|
||||
@ -19,7 +19,7 @@ ZLIBINC=../zlib
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
|
||||
# Library name:
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
LIBNAME = libpng10
|
||||
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -14,7 +14,7 @@
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -18,7 +18,7 @@ ZLIBINC=/opt/zlib/include
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -18,7 +18,7 @@ ZLIBINC=/opt/zlib/include
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -74,7 +74,7 @@ CFLAGS= $(strip $(MINGW_CCFLAGS) $(addprefix -I,$(ZLIBINC)) \
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
MINGDLL = 10
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
SHAREDLIB=libpng$(MINGDLL).dll
|
||||
|
||||
@ -14,7 +14,7 @@ INCSDIR=${LOCALBASE}/include/libpng10
|
||||
|
||||
LIB= png12
|
||||
SHLIB_MAJOR= 0
|
||||
SHLIB_MINOR= 1.0.31rc01
|
||||
SHLIB_MINOR= 1.0.31
|
||||
SRCS= png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \
|
||||
pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \
|
||||
pngwtran.c pngmem.c pngerror.c pngpread.c
|
||||
|
||||
@ -14,7 +14,7 @@ INCSDIR=${LOCALBASE}/include/libpng
|
||||
|
||||
LIB= png
|
||||
SHLIB_MAJOR= 3
|
||||
SHLIB_MINOR= 1.0.31rc01
|
||||
SHLIB_MINOR= 1.0.31
|
||||
SRCS= png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \
|
||||
pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \
|
||||
pngwtran.c pngmem.c pngerror.c pngpread.c
|
||||
|
||||
@ -7,7 +7,7 @@
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -8,7 +8,7 @@ LIBDIR= ${PREFIX}/lib
|
||||
MANDIR= ${PREFIX}/man/cat
|
||||
|
||||
SHLIB_MAJOR= 0
|
||||
SHLIB_MINOR= 1.0.31rc01
|
||||
SHLIB_MINOR= 1.0.31
|
||||
|
||||
LIB= png
|
||||
SRCS= png.c pngerror.c pngget.c pngmem.c pngpread.c \
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# Library name:
|
||||
LIBNAME=libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# Library name:
|
||||
LIBNAME=libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
|
||||
# Library name:
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
LIBNAME = libpng10
|
||||
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
# Library name:
|
||||
LIBNAME = libpng10
|
||||
PNGMAJ = 0
|
||||
PNGMIN = 1.0.31rc01
|
||||
PNGMIN = 1.0.31
|
||||
PNGVER = $(PNGMAJ).$(PNGMIN)
|
||||
|
||||
# Shared library names:
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
; PNG.LIB module definition file for OS/2
|
||||
;----------------------------------------
|
||||
|
||||
; Version 1.0.31rc01
|
||||
; Version 1.0.31
|
||||
|
||||
LIBRARY PNG
|
||||
DESCRIPTION "PNG image compression library for OS/2"
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
LIBRARY
|
||||
|
||||
EXPORTS
|
||||
;Version 1.0.31rc01
|
||||
;Version 1.0.31
|
||||
png_build_grayscale_palette @1
|
||||
png_check_sig @2
|
||||
png_chunk_error @3
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user