[devel] Added png_get_io_chunk_type() and deprecated png_get_io_chunk_name()

This commit is contained in:
Glenn Randers-Pehrson 2011-01-22 08:51:19 -06:00
parent 5c5db5a55f
commit a63dbedead
6 changed files with 65 additions and 30 deletions

View File

@ -1,5 +1,5 @@
Libpng 1.5.1beta07 - January 22, 2011 Libpng 1.5.1beta08 - January 22, 2011
This is not intended to be a public release. It will be replaced 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. within a few weeks by a public version or by another test version.
@ -9,20 +9,20 @@ Files available for download:
Source files with LF line endings (for Unix/Linux) and with a Source files with LF line endings (for Unix/Linux) and with a
"configure" script "configure" script
1.5.1beta07.tar.xz (LZMA-compressed, recommended) 1.5.1beta08.tar.xz (LZMA-compressed, recommended)
1.5.1beta07.tar.gz 1.5.1beta08.tar.gz
1.5.1beta07.tar.bz2 1.5.1beta08.tar.bz2
Source files with CRLF line endings (for Windows), without the Source files with CRLF line endings (for Windows), without the
"configure" script "configure" script
lp151b07.7z (LZMA-compressed, recommended) lp151b08.7z (LZMA-compressed, recommended)
lp151b07.zip lp151b08.zip
Other information: Other information:
1.5.1beta07-README.txt 1.5.1beta08-README.txt
1.5.1beta07-LICENSE.txt 1.5.1beta08-LICENSE.txt
Changes since the last public release (1.5.0): Changes since the last public release (1.5.0):
@ -65,11 +65,17 @@ Version 1.5.1beta06 [January 20, 2011]
Revised png_fixed() in png.c to avoid compiler warning about reaching the Revised png_fixed() in png.c to avoid compiler warning about reaching the
end without returning anything. end without returning anything.
Version 1.5.1rc01 [January 22, 2011] Version 1.5.1beta07 [January 22, 2011]
In the manual, describe the png_get_IHDR() arguments in the correct order. In the manual, describe the png_get_IHDR() arguments in the correct order.
Added const_png_structp and const_png_infop types, and used them in Added const_png_structp and const_png_infop types, and used them in
prototypes for most png_get_*() functions. prototypes for most png_get_*() functions.
Version 1.5.1beta08 [January 22, 2011]
Added png_get_io_chunk_type() and deprecated png_get_io_chunk_name()
Version 1.5.1rc01 [January 22, 2011]
Send comments/corrections/commendations to png-mng-implement at lists.sf.net: Send comments/corrections/commendations to png-mng-implement at lists.sf.net:
(subscription required; visit (subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement https://lists.sourceforge.net/lists/listinfo/png-mng-implement

View File

@ -3181,11 +3181,16 @@ Version 1.5.1beta06 [January 20, 2011]
Revised png_fixed() in png.c to avoid compiler warning about reaching the Revised png_fixed() in png.c to avoid compiler warning about reaching the
end without returning anything. end without returning anything.
Version 1.5.1rc01 [January 22, 2011] Version 1.5.1beta07 [January 22, 2011]
In the manual, describe the png_get_IHDR() arguments in the correct order. In the manual, describe the png_get_IHDR() arguments in the correct order.
Added const_png_structp and const_png_infop types, and used them in Added const_png_structp and const_png_infop types, and used them in
prototypes for most png_get_*() functions. prototypes for most png_get_*() functions.
Version 1.5.1beta08 [January 22, 2011]
Added png_get_io_chunk_type() and deprecated png_get_io_chunk_name()
Version 1.5.1rc01 [January 22, 2011]
Send comments/corrections/commendations to png-mng-implement at lists.sf.net Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit (subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement https://lists.sourceforge.net/lists/listinfo/png-mng-implement

View File

@ -1,6 +1,6 @@
libpng-manual.txt - A description on how to use and modify libpng libpng-manual.txt - A description on how to use and modify libpng
libpng version 1.5.1beta07 - January 22, 2011 libpng version 1.5.1beta08 - January 22, 2011
Updated and distributed by Glenn Randers-Pehrson Updated and distributed by Glenn Randers-Pehrson
<glennrp at users.sourceforge.net> <glennrp at users.sourceforge.net>
Copyright (c) 1998-2011 Glenn Randers-Pehrson Copyright (c) 1998-2011 Glenn Randers-Pehrson
@ -11,7 +11,7 @@ libpng-manual.txt - A description on how to use and modify libpng
Based on: Based on:
libpng versions 0.97, January 1998, through 1.5.1beta07 - January 22, 2011 libpng versions 0.97, January 1998, through 1.5.1beta08 - January 22, 2011
Updated and distributed by Glenn Randers-Pehrson Updated and distributed by Glenn Randers-Pehrson
Copyright (c) 1998-2011 Glenn Randers-Pehrson Copyright (c) 1998-2011 Glenn Randers-Pehrson
@ -1171,7 +1171,7 @@ things.
As of libpng version 1.2.9, png_set_expand_gray_1_2_4_to_8() was As of libpng version 1.2.9, png_set_expand_gray_1_2_4_to_8() was
added. It expands the sample depth without changing tRNS to alpha. added. It expands the sample depth without changing tRNS to alpha.
As of libpng version 1.5.1beta07, not all possible expansions are supported. As of libpng version 1.5.1beta08, not all possible expansions are supported.
In the following table, the 01 means grayscale with depth<8, 31 means In the following table, the 01 means grayscale with depth<8, 31 means
indexed with depth<8, other numerals represent the color type, "T" means indexed with depth<8, other numerals represent the color type, "T" means
@ -4044,7 +4044,7 @@ Since the PNG Development group is an ad-hoc body, we can't make
an official declaration. an official declaration.
This is your unofficial assurance that libpng from version 0.71 and This is your unofficial assurance that libpng from version 0.71 and
upward through 1.5.1beta07 are Y2K compliant. It is my belief that earlier upward through 1.5.1beta08 are Y2K compliant. It is my belief that earlier
versions were also Y2K compliant. versions were also Y2K compliant.
Libpng only has three year fields. One is a 2-byte unsigned integer that Libpng only has three year fields. One is a 2-byte unsigned integer that

View File

@ -1,6 +1,6 @@
.TH LIBPNG 3 "January 22, 2011" .TH LIBPNG 3 "January 22, 2011"
.SH NAME .SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.5.1beta07 libpng \- Portable Network Graphics (PNG) Reference Library 1.5.1beta08
.SH SYNOPSIS .SH SYNOPSIS
\fI\fB \fI\fB
@ -184,10 +184,22 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.5.1beta07
\fI\fB \fI\fB
\fBpng_uint_32 png_get_io_chunk_type (const_png_structp \fIpng_ptr\fP\fB);\fP
\fI\fB
\fBpng_voidp png_get_io_ptr (png_structp \fIpng_ptr\fP\fB);\fP \fBpng_voidp png_get_io_ptr (png_structp \fIpng_ptr\fP\fB);\fP
\fI\fB \fI\fB
\fBpng_uint_32 png_get_io_state (png_structp \fIpng_ptr\fP\fB);\fP
\fI\fB
\fBpng_const_bytep png_get_io_chunk_name (png_structp \fIpng_ptr\fP\fB);\fP
\fI\fB
\fBpng_byte png_get_libpng_ver (const_png_structp \fIpng_ptr\fP\fB);\fP \fBpng_byte png_get_libpng_ver (const_png_structp \fIpng_ptr\fP\fB);\fP
\fI\fB \fI\fB
@ -851,7 +863,7 @@ Following is a copy of the libpng-manual.txt file that accompanies libpng.
.SH LIBPNG.TXT .SH LIBPNG.TXT
libpng-manual.txt - A description on how to use and modify libpng libpng-manual.txt - A description on how to use and modify libpng
libpng version 1.5.1beta07 - January 22, 2011 libpng version 1.5.1beta08 - January 22, 2011
Updated and distributed by Glenn Randers-Pehrson Updated and distributed by Glenn Randers-Pehrson
<glennrp at users.sourceforge.net> <glennrp at users.sourceforge.net>
Copyright (c) 1998-2011 Glenn Randers-Pehrson Copyright (c) 1998-2011 Glenn Randers-Pehrson
@ -862,7 +874,7 @@ libpng-manual.txt - A description on how to use and modify libpng
Based on: Based on:
libpng versions 0.97, January 1998, through 1.5.1beta07 - January 22, 2011 libpng versions 0.97, January 1998, through 1.5.1beta08 - January 22, 2011
Updated and distributed by Glenn Randers-Pehrson Updated and distributed by Glenn Randers-Pehrson
Copyright (c) 1998-2011 Glenn Randers-Pehrson Copyright (c) 1998-2011 Glenn Randers-Pehrson
@ -2022,7 +2034,7 @@ things.
As of libpng version 1.2.9, png_set_expand_gray_1_2_4_to_8() was As of libpng version 1.2.9, png_set_expand_gray_1_2_4_to_8() was
added. It expands the sample depth without changing tRNS to alpha. added. It expands the sample depth without changing tRNS to alpha.
As of libpng version 1.5.1beta07, not all possible expansions are supported. As of libpng version 1.5.1beta08, not all possible expansions are supported.
In the following table, the 01 means grayscale with depth<8, 31 means In the following table, the 01 means grayscale with depth<8, 31 means
indexed with depth<8, other numerals represent the color type, "T" means indexed with depth<8, other numerals represent the color type, "T" means
@ -4895,7 +4907,7 @@ Since the PNG Development group is an ad-hoc body, we can't make
an official declaration. an official declaration.
This is your unofficial assurance that libpng from version 0.71 and This is your unofficial assurance that libpng from version 0.71 and
upward through 1.5.1beta07 are Y2K compliant. It is my belief that earlier upward through 1.5.1beta08 are Y2K compliant. It is my belief that earlier
versions were also Y2K compliant. versions were also Y2K compliant.
Libpng only has three year fields. One is a 2-byte unsigned integer that Libpng only has three year fields. One is a 2-byte unsigned integer that
@ -5135,7 +5147,7 @@ possible without all of you.
Thanks to Frank J. T. Wojcik for helping with the documentation. Thanks to Frank J. T. Wojcik for helping with the documentation.
Libpng version 1.5.1beta07 - January 22, 2011: Libpng version 1.5.1beta08 - January 22, 2011:
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net). Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
@ -5158,7 +5170,7 @@ this sentence.
This code is released under the libpng license. This code is released under the libpng license.
libpng versions 1.2.6, August 15, 2004, through 1.5.1beta07, January 22, 2011, are libpng versions 1.2.6, August 15, 2004, through 1.5.1beta08, January 22, 2011, are
Copyright (c) 2004,2006-2007 Glenn Randers-Pehrson, and are Copyright (c) 2004,2006-2007 Glenn Randers-Pehrson, and are
distributed according to the same disclaimer and license as libpng-1.2.5 distributed according to the same disclaimer and license as libpng-1.2.5
with the following individual added to the list of Contributing Authors with the following individual added to the list of Contributing Authors

21
png.h
View File

@ -1,7 +1,7 @@
/* png.h - header file for PNG reference library /* png.h - header file for PNG reference library
* *
* libpng version 1.5.1beta07 - January 22, 2011 * libpng version 1.5.1beta08 - January 22, 2011
* Copyright (c) 1998-2011 Glenn Randers-Pehrson * Copyright (c) 1998-2011 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
@ -11,7 +11,7 @@
* Authors and maintainers: * Authors and maintainers:
* libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat * 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.89c, June 1996, through 0.96, May 1997: Andreas Dilger
* libpng versions 0.97, January 1998, through 1.5.1beta07 - January 22, 2011: Glenn * libpng versions 0.97, January 1998, through 1.5.1beta08 - January 22, 2011: Glenn
* See also "Contributing Authors", below. * See also "Contributing Authors", below.
* *
* Note about libpng version numbers: * Note about libpng version numbers:
@ -176,7 +176,7 @@
* *
* This code is released under the libpng license. * This code is released under the libpng license.
* *
* libpng versions 1.2.6, August 15, 2004, through 1.5.1beta07, January 22, 2011, are * libpng versions 1.2.6, August 15, 2004, through 1.5.1beta08, January 22, 2011, are
* Copyright (c) 2004, 2006-2011 Glenn Randers-Pehrson, and are * Copyright (c) 2004, 2006-2011 Glenn Randers-Pehrson, and are
* distributed according to the same disclaimer and license as libpng-1.2.5 * distributed according to the same disclaimer and license as libpng-1.2.5
* with the following individual added to the list of Contributing Authors: * with the following individual added to the list of Contributing Authors:
@ -294,7 +294,7 @@
* an official declaration. * an official declaration.
* *
* This is your unofficial assurance that libpng from version 0.71 and * This is your unofficial assurance that libpng from version 0.71 and
* upward through 1.5.1beta07 are Y2K compliant. It is my belief that * upward through 1.5.1beta08 are Y2K compliant. It is my belief that
* earlier versions were also Y2K compliant. * earlier versions were also Y2K compliant.
* *
* Libpng only has three year fields. One is a 2-byte unsigned integer * Libpng only has three year fields. One is a 2-byte unsigned integer
@ -350,9 +350,9 @@
*/ */
/* Version information for png.h - this should match the version in png.c */ /* Version information for png.h - this should match the version in png.c */
#define PNG_LIBPNG_VER_STRING "1.5.1beta07" #define PNG_LIBPNG_VER_STRING "1.5.1beta08"
#define PNG_HEADER_VERSION_STRING \ #define PNG_HEADER_VERSION_STRING \
" libpng version 1.5.1beta07 - January 22, 2011\n" " libpng version 1.5.1beta08 - January 22, 2011\n"
#define PNG_LIBPNG_VER_SONUM 15 #define PNG_LIBPNG_VER_SONUM 15
#define PNG_LIBPNG_VER_DLLNUM 15 #define PNG_LIBPNG_VER_DLLNUM 15
@ -365,7 +365,7 @@
* PNG_LIBPNG_VER_STRING, omitting any leading zero: * PNG_LIBPNG_VER_STRING, omitting any leading zero:
*/ */
#define PNG_LIBPNG_VER_BUILD 07 #define PNG_LIBPNG_VER_BUILD 08
/* Release Status */ /* Release Status */
#define PNG_LIBPNG_BUILD_ALPHA 1 #define PNG_LIBPNG_BUILD_ALPHA 1
@ -507,7 +507,7 @@ extern "C" {
/* This triggers a compiler error in png.c, if png.c and png.h /* This triggers a compiler error in png.c, if png.c and png.h
* do not agree upon the version number. * do not agree upon the version number.
*/ */
typedef char* png_libpng_version_1_5_1beta07; typedef char* png_libpng_version_1_5_1beta08;
/* Three color definitions. The order of the red, green, and blue, (and the /* Three color definitions. The order of the red, green, and blue, (and the
* exact size) is not important, although the size of the fields need to * exact size) is not important, although the size of the fields need to
@ -2063,7 +2063,10 @@ PNG_EXPORT(198, png_uint_32, png_get_pHYs_dpi, (const_png_structp png_ptr,
#ifdef PNG_IO_STATE_SUPPORTED #ifdef PNG_IO_STATE_SUPPORTED
PNG_EXPORT(199, png_uint_32, png_get_io_state, (png_structp png_ptr)); PNG_EXPORT(199, png_uint_32, png_get_io_state, (png_structp png_ptr));
PNG_EXPORT(200, png_const_bytep, png_get_io_chunk_name, (png_structp png_ptr)); PNG_EXPORTA(200, png_const_bytep, png_get_io_chunk_name,
(png_structp png_ptr), PNG_DEPRECATED);
PNG_EXPORT(200, png_uint_32, png_get_io_chunk_type,
(const_png_structp png_ptr));
/* The flags returned by png_get_io_state() are the following: */ /* The flags returned by png_get_io_state() are the following: */
# define PNG_IO_NONE 0x0000 /* no I/O at this moment */ # define PNG_IO_NONE 0x0000 /* no I/O at this moment */

View File

@ -1013,6 +1013,15 @@ png_get_io_state (png_structp png_ptr)
return png_ptr->io_state; return png_ptr->io_state;
} }
png_uint_32 PNGAPI
png_get_io_chunk_type (const_png_structp png_ptr)
{
return ((png_ptr->chunk_name[0] << 24) +
(png_ptr->chunk_name[1] << 16) +
(png_ptr->chunk_name[2] << 8) +
(png_ptr->chunk_name[3]));
}
png_const_bytep PNGAPI png_const_bytep PNGAPI
png_get_io_chunk_name (png_structp png_ptr) png_get_io_chunk_name (png_structp png_ptr)
{ {