Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
102027ce
D
dragonwell8_jdk
项目概览
openanolis
/
dragonwell8_jdk
通知
4
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_jdk
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
102027ce
编写于
12月 10, 2015
作者:
A
azvegint
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
8144955: Wrong changes were pushed with 8143942
Reviewed-by: prr, serb
上级
51da6ad7
变更
26
展开全部
隐藏空白更改
内联
并排
Showing
26 changed file
with
20411 addition
and
11394 deletion
+20411
-11394
src/share/native/sun/awt/libpng/CHANGES
src/share/native/sun/awt/libpng/CHANGES
+1982
-45
src/share/native/sun/awt/libpng/LICENSE
src/share/native/sun/awt/libpng/LICENSE
+28
-27
src/share/native/sun/awt/libpng/README
src/share/native/sun/awt/libpng/README
+38
-25
src/share/native/sun/awt/libpng/png.c
src/share/native/sun/awt/libpng/png.c
+2582
-506
src/share/native/sun/awt/libpng/png.h
src/share/native/sun/awt/libpng/png.h
+1391
-849
src/share/native/sun/awt/libpng/pngconf.h
src/share/native/sun/awt/libpng/pngconf.h
+258
-255
src/share/native/sun/awt/libpng/pngdebug.h
src/share/native/sun/awt/libpng/pngdebug.h
+9
-13
src/share/native/sun/awt/libpng/pngerror.c
src/share/native/sun/awt/libpng/pngerror.c
+400
-109
src/share/native/sun/awt/libpng/pngget.c
src/share/native/sun/awt/libpng/pngget.c
+357
-170
src/share/native/sun/awt/libpng/pnginfo.h
src/share/native/sun/awt/libpng/pnginfo.h
+33
-43
src/share/native/sun/awt/libpng/pnglibconf.h
src/share/native/sun/awt/libpng/pnglibconf.h
+133
-64
src/share/native/sun/awt/libpng/pngmem.c
src/share/native/sun/awt/libpng/pngmem.c
+146
-529
src/share/native/sun/awt/libpng/pngpread.c
src/share/native/sun/awt/libpng/pngpread.c
+231
-1002
src/share/native/sun/awt/libpng/pngpriv.h
src/share/native/sun/awt/libpng/pngpriv.h
+1171
-600
src/share/native/sun/awt/libpng/pngread.c
src/share/native/sun/awt/libpng/pngread.c
+3383
-701
src/share/native/sun/awt/libpng/pngrio.c
src/share/native/sun/awt/libpng/pngrio.c
+9
-65
src/share/native/sun/awt/libpng/pngrtran.c
src/share/native/sun/awt/libpng/pngrtran.c
+1160
-1119
src/share/native/sun/awt/libpng/pngrutil.c
src/share/native/sun/awt/libpng/pngrutil.c
+2466
-1603
src/share/native/sun/awt/libpng/pngset.c
src/share/native/sun/awt/libpng/pngset.c
+781
-371
src/share/native/sun/awt/libpng/pngstruct.h
src/share/native/sun/awt/libpng/pngstruct.h
+216
-70
src/share/native/sun/awt/libpng/pngtest.c
src/share/native/sun/awt/libpng/pngtest.c
+727
-451
src/share/native/sun/awt/libpng/pngtrans.c
src/share/native/sun/awt/libpng/pngtrans.c
+225
-54
src/share/native/sun/awt/libpng/pngwio.c
src/share/native/sun/awt/libpng/pngwio.c
+15
-101
src/share/native/sun/awt/libpng/pngwrite.c
src/share/native/sun/awt/libpng/pngwrite.c
+1375
-800
src/share/native/sun/awt/libpng/pngwtran.c
src/share/native/sun/awt/libpng/pngwtran.c
+105
-162
src/share/native/sun/awt/libpng/pngwutil.c
src/share/native/sun/awt/libpng/pngwutil.c
+1190
-1660
未找到文件。
src/share/native/sun/awt/libpng/CHANGES
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/LICENSE
浏览文件 @
102027ce
...
...
@@ -10,21 +10,18 @@ this sentence.
This code is released under the libpng license.
libpng versions 1.2.6, August 15, 2004, through 1.5.4, July 7, 2011, are
Copyright (c) 2004, 2006-2011 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
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
distributed according to the same disclaimer and license as libpng-1.0.6
with the following individuals added to the list of Contributing Authors
libpng versions 1.0.7, July 1, 2000, through 1.6.20, December 3, 2015, are
Copyright (c) 2000-2002, 2004, 2006-2015 Glenn Randers-Pehrson, are
derived from libpng-1.0.6, and are distributed according to the same
disclaimer and license as libpng-1.0.6 with the following individuals
added to the list of Contributing Authors:
Simon-Pierre Cadieux
Eric S. Raymond
Mans Rullgard
Cosmin Truta
Gilles Vollant
James Yu
and with the following additions to the disclaimer:
...
...
@@ -36,18 +33,20 @@ and with the following additions to the disclaimer:
the user.
libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are
Copyright (c) 1998, 1999 Glenn Randers-Pehrson, and are
distributed according to the same disclaimer and license as libpng-0.96,
with the following individuals added to the list of Contributing Authors:
Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from
libpng-0.96, and are distributed according to the same disclaimer and
license as libpng-0.96, with the following individuals added to the list
of Contributing Authors:
Tom Lane
Glenn Randers-Pehrson
Willem van Schaik
libpng versions 0.89, June 1996, through 0.96, May 1997, are
Copyright (c) 1996, 1997 Andreas Dilger
Distributed according to the same disclaimer and license as libpng-0.88,
with the following individuals added to the list of Contributing Authors:
Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88,
and are distributed according to the same disclaimer and license as
libpng-0.88, with the following individuals added to the list of
Contributing Authors:
John Bowler
Kevin Bracey
...
...
@@ -57,7 +56,7 @@ with the following individuals added to the list of Contributing Authors:
Tom Tanner
libpng versions 0.5, May 1995, through 0.88, January 1996, are
Copyright (c) 1995
,
1996 Guy Eric Schalnat, Group 42, Inc.
Copyright (c) 1995
-
1996 Guy Eric Schalnat, Group 42, Inc.
For the purposes of this copyright and license, "Contributing Authors"
is defined as the following set of individuals:
...
...
@@ -80,13 +79,13 @@ Permission is hereby granted to use, copy, modify, and distribute this
source code, or portions hereof, for any purpose, without fee, subject
to the following restrictions:
1. The origin of this source code must not be misrepresented.
1. The origin of this source code must not be misrepresented.
2. Altered versions must be plainly marked as such and must not
be misrepresented as being the original source.
2. Altered versions must be plainly marked as such and must not
be misrepresented as being the original source.
3. This Copyright notice may not be removed or altered from any
source or altered source distribution.
3. This Copyright notice may not be removed or altered from any
source or altered source distribution.
The Contributing Authors and Group 42, Inc. specifically permit, without
fee, and encourage the use of this source code as a component to
...
...
@@ -94,18 +93,20 @@ supporting the PNG file format in commercial products. If you use this
source code in a product, acknowledgment is not required but would be
appreciated.
END OF COPYRIGHT NOTICE, DISCLAIMER, and LICENSE.
A "png_get_copyright" function is available, for convenient use in "about"
boxes and the like:
printf("%s",png_get_copyright(NULL));
printf("%s",
png_get_copyright(NULL));
Also, the PNG logo (in PNG format, of course) is supplied in the
files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31).
Libpng is OSI Certified Open Source Software. OSI Certified Open Source is a
certification mark of the Open Source Initiative.
Libpng is OSI Certified Open Source Software. OSI Certified Open Source is
a certification mark of the Open Source Initiative. OSI has not addressed
the additional disclaimers inserted at version 1.0.7.
Glenn Randers-Pehrson
glennrp at users.sourceforge.net
July 7, 2011
December 3, 2015
src/share/native/sun/awt/libpng/README
浏览文件 @
102027ce
README for libpng version 1.
5.4 - July 7, 2011 (shared library 15
.0)
README for libpng version 1.
6.20 - December 3, 2015 (shared library 16
.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
,
libpng-*.tar.xz 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
or
libpng-*.tar.xz or
if you want UNIX-style line endings in the text files,
or lpng*.7z
or 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
...
...
@@ -23,18 +23,25 @@ earlier versions if you are using a shared library. The type of the
png_uint_32, which will affect shared-library applications that use
this function.
To avoid problems with changes to the internals of png
_
info_struct,
To avoid problems with changes to the internals of png
info_struct,
new APIs have been made available in 0.95 to avoid direct application
access to info_ptr. These functions are the png_set_<chunk> and
png_get_<chunk> functions. These functions should be used when
accessing/storing the info_struct data, rather than manipulating it
directly, to avoid such problems in the future.
It is important to note that the APIs d
o
not make current programs
It is important to note that the APIs d
id
not make current programs
that access the info struct directly incompatible with the new
library. However, it is strongly suggested that new programs use
the new APIs (as shown in example.c and pngtest.c), and older programs
be converted to the new format, to facilitate upgrades in the future.
library, through libpng-1.2.x. In libpng-1.4.x, which was meant to
be a transitional release, members of the png_struct and the
info_struct can still be accessed, but the compiler will issue a
warning about deprecated usage. Since libpng-1.5.0, direct access
to these structs is not allowed, and the definitions of the structs
reside in private pngstruct.h and pnginfo.h header files that are not
accessible to applications. It is strongly suggested that new
programs use the new APIs (as shown in example.c and pngtest.c), and
older programs be converted to the new format, to facilitate upgrades
in the future.
****
Additions since 0.90 include the ability to compile libpng as a
...
...
@@ -77,17 +84,21 @@ 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 zlib.net.
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/
This code is currently being archived at libpng.sf.net in the
[DOWNLOAD] area, and on CompuServe, Lib 20 (PNG SUPPORT)
at GO GRAPHSUP. If you can't find it in any of those places,
e-mail me, and I'll help you find it.
[DOWNLOAD] area, and at ftp://ftp.simplesystems.org. If you can't find it
in any of those places, e-mail me, and I'll help you find it.
I am not a lawyer, but I believe that the Export Control Classification
Number (ECCN) for libpng is EAR99, which means not subject to export
controls or International Traffic in Arms Regulations (ITAR) because it
is open source, publicly available software, that does not contain any
encryption software. See the EAR, paragraphs 734.3(b)(3) and 734.7(b).
If you have any code changes, requests, problems, etc., please e-mail
them to me. Also, I'd appreciate any make files or project files,
...
...
@@ -105,7 +116,7 @@ based in a large way on Guy's and Andreas' earlier work), and the PNG
development group.
Send comments/corrections/commendations to png-mng-implement at
lists.sourceforge.net (subscription required; visit
lists.sourceforge.net (subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
to subscribe) or to glennrp at users.sourceforge.net
...
...
@@ -123,7 +134,7 @@ and ...". If in doubt, send questions to me. I'll bounce them
to others, if necessary.
Please do not send suggestions on how to change PNG. We have
been discussing PNG for
sixteen
years now, and it is official and
been discussing PNG for
twenty
years now, and it is official and
finished. If you have suggestions for libpng, however, I'll
gladly listen. Even if your suggestion is not used immediately,
it may be used later.
...
...
@@ -167,23 +178,25 @@ Files in this distribution:
pngwrite.c => High-level write functions
pngwtran.c => Write data transformations
pngwutil.c => Write utility functions
arm => Contains optimized code for the ARM platform
contrib => Contributions
examples => Example programs
gregbook => source code for PNG reading and writing, from
Greg Roelofs' "PNG: The Definitive Guide",
O'Reilly, 1999
msvctest => Builds and runs pngtest using a MSVC workspace
pngminus => Simple pnm2png and png2pnm programs
pngsuite => Test images
visupng => Contains a MSVC workspace for VisualPng
libtests => Test programs
pngminim => Minimal decoder, encoder, and progressive decoder
programs demonstrating use of pngusr.dfa
pngminus => Simple pnm2png and png2pnm programs
pngsuite => Test images
tools => Various tools
visupng => Contains a MSVC workspace for VisualPng
projects => Contains project files and workspaces for
building a DLL
cbuilder5 => Contains a Borland workspace for building
libpng and zlib
visualc6 => Contains a Microsoft Visual C++ (MSVC)
workspace for building libpng and zlib
owatcom => Contains a WATCOM project for building libpng
visualc71 => Contains a Microsoft Visual C++ (MSVC)
workspace for building libpng and zlib
xcode => Contains an Apple xcode
vstudio => Contains a Microsoft Visual C++ (MSVC)
workspace for building libpng and zlib
scripts => Directory containing scripts for building libpng:
(see scripts/README.txt for the list of scripts)
...
...
src/share/native/sun/awt/libpng/png.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/png.h
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngconf.h
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngdebug.h
浏览文件 @
102027ce
...
...
@@ -29,12 +29,11 @@
* However, the following notice accompanied the original version of this
* file and, per its terms, should not be removed:
*
* Copyright (c) 1998-2011 Glenn Randers-Pehrson
* Last changed in libpng 1.6.8 [December 19, 2013]
* Copyright (c) 1998-2013 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.)
*
* Last changed in libpng 1.5.0 [January 6, 2011]
*
* This code is released under the libpng license.
* For conditions of distribution and use, see the disclaimer
* and license in png.h
...
...
@@ -53,7 +52,7 @@
* (actually ((void)0)).
*
* level: level of detail of message, starting at 0. A level 'n'
* message is preceded by 'n'
tab character
s (not implemented
* message is preceded by 'n'
3-space indentation
s (not implemented
* on Microsoft compilers unless PNG_DEBUG_FILE is also
* defined, to allow debug DLL compilation with no standard IO).
* message: a printf(3) style text string. A trailing '\n' is added
...
...
@@ -105,32 +104,29 @@
# endif
/* PNG_DEBUG_FILE */
# if (PNG_DEBUG > 1)
/* Note: ["%s"m PNG_STRING_NEWLINE] probably does not work on
* non-ISO compilers
*/
# ifdef __STDC__
# ifndef png_debug
# define png_debug(l,m) \
do { \
int num_tabs=l; \
fprintf(PNG_DEBUG_FILE,"%s"
m PNG_STRING_NEWLINE,(num_tabs==1 ? "\t
" : \
(num_tabs==2 ? "
\t\t":(num_tabs>2 ? "\t\t\t":
"")))); \
fprintf(PNG_DEBUG_FILE,"%s"
m PNG_STRING_NEWLINE,(num_tabs==1 ? "
" : \
(num_tabs==2 ? "
" : (num_tabs>2 ? " " :
"")))); \
} while (0)
# endif
# ifndef png_debug1
# define png_debug1(l,m,p1) \
do { \
int num_tabs=l; \
fprintf(PNG_DEBUG_FILE,"%s"
m PNG_STRING_NEWLINE,(num_tabs==1 ? "\t
" : \
(num_tabs==2 ? "
\t\t":(num_tabs>2 ? "\t\t\t":
""))),p1); \
fprintf(PNG_DEBUG_FILE,"%s"
m PNG_STRING_NEWLINE,(num_tabs==1 ? "
" : \
(num_tabs==2 ? "
" : (num_tabs>2 ? " " :
""))),p1); \
} while (0)
# endif
# ifndef png_debug2
# define png_debug2(l,m,p1,p2) \
do { \
int num_tabs=l; \
fprintf(PNG_DEBUG_FILE,"%s"
m PNG_STRING_NEWLINE,(num_tabs==1 ? "\t
" : \
(num_tabs==2 ? "
\t\t":(num_tabs>2 ? "\t\t\t":""))),p1,p2);
\
fprintf(PNG_DEBUG_FILE,"%s"
m PNG_STRING_NEWLINE,(num_tabs==1 ? "
" : \
(num_tabs==2 ? "
" : (num_tabs>2 ? " " : ""))),p1,p2);
\
} while (0)
# endif
# else
/* __STDC __ */
...
...
src/share/native/sun/awt/libpng/pngerror.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngget.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pnginfo.h
浏览文件 @
102027ce
...
...
@@ -29,12 +29,11 @@
* However, the following notice accompanied the original version of this
* file and, per its terms, should not be removed:
*
* Copyright (c) 1998-2011 Glenn Randers-Pehrson
* Last changed in libpng 1.6.1 [March 28, 2013]
* Copyright (c) 1998-2013 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.)
*
* Last changed in libpng 1.5.0 [January 6, 2011]
*
* This code is released under the libpng license.
* For conditions of distribution and use, see the disclaimer
* and license in png.h
...
...
@@ -83,7 +82,7 @@
struct
png_info_def
{
/*
t
he following are necessary for every PNG file */
/*
T
he following are necessary for every PNG file */
png_uint_32
width
;
/* width of image in pixels (from IHDR) */
png_uint_32
height
;
/* height of image in pixels (from IHDR) */
png_uint_32
valid
;
/* valid chunk data (see PNG_INFO_ below) */
...
...
@@ -98,11 +97,17 @@ struct png_info_def
png_byte
filter_type
;
/* must be PNG_FILTER_TYPE_BASE (from IHDR) */
png_byte
interlace_type
;
/* One of PNG_INTERLACE_NONE, PNG_INTERLACE_ADAM7 */
/* The following is informational only on read, and not used on writes. */
/* The following are set by png_set_IHDR, called from the application on
* write, but the are never actually used by the write code.
*/
png_byte
channels
;
/* number of data channels per pixel (1, 2, 3, 4) */
png_byte
pixel_depth
;
/* number of bits per pixel */
png_byte
spare_byte
;
/* to align the data, and for future use */
#ifdef PNG_READ_SUPPORTED
/* This is never set during write */
png_byte
signature
[
8
];
/* magic bytes read by libpng from start of file */
#endif
/* The rest of the data is optional. If you are reading, check the
* valid field to see if the information in these are valid. If you
...
...
@@ -110,18 +115,25 @@ struct png_info_def
* and initialize the appropriate fields below.
*/
#if defined(PNG_gAMA_SUPPORTED)
/* The gAMA chunk describes the gamma characteristics of the system
* on which the image was created, normally in the range [1.0, 2.5].
* Data is valid if (valid & PNG_INFO_gAMA) is non-zero.
#if defined(PNG_COLORSPACE_SUPPORTED) || defined(PNG_GAMMA_SUPPORTED)
/* png_colorspace only contains 'flags' if neither GAMMA or COLORSPACE are
* defined. When COLORSPACE is switched on all the colorspace-defining
* chunks should be enabled, when GAMMA is switched on all the gamma-defining
* chunks should be enabled. If this is not done it becomes possible to read
* inconsistent PNG files and assign a probably incorrect interpretation to
* the information. (In other words, by carefully choosing which chunks to
* recognize the system configuration can select an interpretation for PNG
* files containing ambiguous data and this will result in inconsistent
* behavior between different libpng builds!)
*/
png_
fixed_point
gamma
;
png_
colorspace
colorspace
;
#endif
#ifdef PNG_sRGB_SUPPORTED
/* GR-P, 0.96a */
/* Data valid if (valid & PNG_INFO_sRGB) non-zero. */
png_byte
srgb_intent
;
/* sRGB rendering intent [0, 1, 2, or 3] */
#ifdef PNG_iCCP_SUPPORTED
/* iCCP chunk data. */
png_charp
iccp_name
;
/* profile name */
png_bytep
iccp_profile
;
/* International Color Consortium profile data */
png_uint_32
iccp_proflen
;
/* ICC profile data length */
#endif
#ifdef PNG_TEXT_SUPPORTED
...
...
@@ -136,7 +148,7 @@ struct png_info_def
int
num_text
;
/* number of comments read or comments to write */
int
max_text
;
/* current size of text array */
png_textp
text
;
/* array of comments read or comments to write */
#endif
/*
PNG_TEXT_SUPPORTED
*/
#endif
/*
TEXT
*/
#ifdef PNG_tIME_SUPPORTED
/* The tIME chunk holds the last time the displayed image data was
...
...
@@ -211,23 +223,6 @@ defined(PNG_READ_BACKGROUND_SUPPORTED)
png_uint_16p
hist
;
#endif
#ifdef PNG_cHRM_SUPPORTED
/* The cHRM chunk describes the CIE color characteristics of the monitor
* on which the PNG was created. This data allows the viewer to do gamut
* mapping of the input image to ensure that the viewer sees the same
* colors in the image as the creator. Values are in the range
* [0.0, 0.8]. Data valid if (valid & PNG_INFO_cHRM) non-zero.
*/
png_fixed_point
x_white
;
png_fixed_point
y_white
;
png_fixed_point
x_red
;
png_fixed_point
y_red
;
png_fixed_point
x_green
;
png_fixed_point
y_green
;
png_fixed_point
x_blue
;
png_fixed_point
y_blue
;
#endif
#ifdef PNG_pCAL_SUPPORTED
/* The pCAL chunk describes a transformation between the stored pixel
* values and original physical data values used to create the image.
...
...
@@ -252,25 +247,20 @@ defined(PNG_READ_BACKGROUND_SUPPORTED)
/* New members added in libpng-1.0.6 */
png_uint_32
free_me
;
/* flags items libpng is responsible for freeing */
#if defined(PNG_UNKNOWN_CHUNKS_SUPPORTED) || \
defined(PNG_HANDLE_AS_UNKNOWN_SUPPORTED)
#ifdef PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED
/* Storage for unknown chunks that the library doesn't recognize. */
png_unknown_chunkp
unknown_chunks
;
int
unknown_chunks_num
;
#endif
#ifdef PNG_iCCP_SUPPORTED
/* iCCP chunk data. */
png_charp
iccp_name
;
/* profile name */
png_bytep
iccp_profile
;
/* International Color Consortium profile data */
png_uint_32
iccp_proflen
;
/* ICC profile data length */
png_byte
iccp_compression
;
/* Always zero */
/* The type of this field is limited by the type of
* png_struct::user_chunk_cache_max, else overflow can occur.
*/
int
unknown_chunks_num
;
#endif
#ifdef PNG_sPLT_SUPPORTED
/* Data on sPLT chunks (there may be more than one). */
png_sPLT_tp
splt_palettes
;
png_uint_32
splt_palettes_num
;
int
splt_palettes_num
;
/* Match type returned by png_get API */
#endif
#ifdef PNG_sCAL_SUPPORTED
...
...
src/share/native/sun/awt/libpng/pnglibconf.h
浏览文件 @
102027ce
...
...
@@ -34,69 +34,47 @@
* file and, per its terms, should not be removed:
*/
/* libpng version 1.
5.4 - last changed on June 22, 2011
*/
/* libpng version 1.
6.20, December 3, 2015
*/
/* Copyright (c) 1998-201
1
Glenn Randers-Pehrson */
/* Copyright (c) 1998-201
4
Glenn Randers-Pehrson */
/* This code is released under the libpng license. */
/* For conditions of distribution and use, see the disclaimer */
/* and license in png.h */
/* pnglibconf.h */
/* Machine generated file: DO NOT EDIT */
/* Derived from: scripts/pnglibconf.dfa */
/* If you edit this file by hand you must obey the rules expressed in */
/* pnglibconf.dfa with respect to the dependencies between the following */
/* symbols. It is much better to generate a new file using */
/* scripts/libpngconf.mak */
#ifndef PNGLCONF_H
#define PNGLCONF_H
/* settings */
#define PNG_API_RULE 0
#define PNG_CALLOC_SUPPORTED
#define PNG_COST_SHIFT 3
#define PNG_DEFAULT_READ_MACROS 1
#define PNG_GAMMA_THRESHOLD_FIXED 5000
#define PNG_MAX_GAMMA_8 11
#define PNG_QUANTIZE_BLUE_BITS 5
#define PNG_QUANTIZE_GREEN_BITS 5
#define PNG_QUANTIZE_RED_BITS 5
#define PNG_sCAL_PRECISION 5
#define PNG_USER_CHUNK_CACHE_MAX 0
#define PNG_USER_CHUNK_MALLOC_MAX 0
#define PNG_USER_HEIGHT_MAX 1000000L
#define PNG_USER_WIDTH_MAX 1000000L
#define PNG_WEIGHT_SHIFT 8
#define PNG_ZBUF_SIZE 8192
/* end of settings */
/* options */
#define PNG_16BIT_SUPPORTED
#define PNG_ALIGN_MEMORY_SUPPORTED
#define PNG_ALIGNED_MEMORY_SUPPORTED
/*#undef PNG_ARM_NEON_API_SUPPORTED*/
/*#undef PNG_ARM_NEON_CHECK_SUPPORTED*/
#define PNG_BENIGN_ERRORS_SUPPORTED
#define PNG_bKGD_SUPPORTED
#define PNG_BENIGN_READ_ERRORS_SUPPORTED
/*#undef PNG_BENIGN_WRITE_ERRORS_SUPPORTED*/
#define PNG_BUILD_GRAYSCALE_PALETTE_SUPPORTED
#define PNG_CHECK_
cHRM
_SUPPORTED
#define PNG_
cHRM
_SUPPORTED
#define PNG_CHECK_
FOR_INVALID_INDEX
_SUPPORTED
#define PNG_
COLORSPACE
_SUPPORTED
#define PNG_CONSOLE_IO_SUPPORTED
#define PNG_CONVERT_tIME_SUPPORTED
/*#undef PNG_CONVERT_tIME_SUPPORTED*/
#define PNG_EASY_ACCESS_SUPPORTED
/*#undef PNG_ERROR_NUMBERS_SUPPORTED*/
#define PNG_ERROR_TEXT_SUPPORTED
#define PNG_FIXED_POINT_SUPPORTED
#define PNG_FLOATING_ARITHMETIC_SUPPORTED
#define PNG_FLOATING_POINT_SUPPORTED
#define PNG_gAMA_SUPPORTED
#define PNG_FORMAT_AFIRST_SUPPORTED
#define PNG_FORMAT_BGR_SUPPORTED
#define PNG_GAMMA_SUPPORTED
#define PNG_GET_PALETTE_MAX_SUPPORTED
#define PNG_HANDLE_AS_UNKNOWN_SUPPORTED
#define PNG_hIST_SUPPORTED
#define PNG_iCCP_SUPPORTED
#define PNG_INCH_CONVERSIONS_SUPPORTED
#define PNG_INFO_IMAGE_SUPPORTED
#define PNG_IO_STATE_SUPPORTED
#define PNG_iTXt_SUPPORTED
#define PNG_MNG_FEATURES_SUPPORTED
#define PNG_oFFs_SUPPORTED
#define PNG_pCAL_SUPPORTED
#define PNG_pHYs_SUPPORTED
#define PNG_POINTER_INDEXING_SUPPORTED
#define PNG_PROGRESSIVE_READ_SUPPORTED
#define PNG_READ_16BIT_SUPPORTED
...
...
@@ -104,67 +82,70 @@
#define PNG_READ_ANCILLARY_CHUNKS_SUPPORTED
#define PNG_READ_BACKGROUND_SUPPORTED
#define PNG_READ_BGR_SUPPORTED
#define PNG_READ_bKGD_SUPPORTED
#define PNG_READ_cHRM_SUPPORTED
#define PNG_READ_CHECK_FOR_INVALID_INDEX_SUPPORTED
#define PNG_READ_COMPOSITE_NODIV_SUPPORTED
#define PNG_READ_COMPRESSED_TEXT_SUPPORTED
#define PNG_READ_EXPAND_16_SUPPORTED
#define PNG_READ_EXPAND_SUPPORTED
#define PNG_READ_FILLER_SUPPORTED
#define PNG_READ_gAMA_SUPPORTED
#define PNG_READ_GAMMA_SUPPORTED
#define PNG_READ_GET_PALETTE_MAX_SUPPORTED
#define PNG_READ_GRAY_TO_RGB_SUPPORTED
#define PNG_READ_hIST_SUPPORTED
#define PNG_READ_iCCP_SUPPORTED
#define PNG_READ_INTERLACING_SUPPORTED
#define PNG_READ_INT_FUNCTIONS_SUPPORTED
#define PNG_READ_INVERT_ALPHA_SUPPORTED
#define PNG_READ_INVERT_SUPPORTED
#define PNG_READ_iTXt_SUPPORTED
#define PNG_READ_oFFs_SUPPORTED
#define PNG_READ_OPT_PLTE_SUPPORTED
#define PNG_READ_PACK_SUPPORTED
#define PNG_READ_PACKSWAP_SUPPORTED
#define PNG_READ_pCAL_SUPPORTED
#define PNG_READ_pHYs_SUPPORTED
#define PNG_READ_PACK_SUPPORTED
#define PNG_READ_QUANTIZE_SUPPORTED
#define PNG_READ_RGB_TO_GRAY_SUPPORTED
#define PNG_READ_sBIT_SUPPORTED
#define PNG_READ_SCALE_16_TO_8_SUPPORTED
#define PNG_READ_sCAL_SUPPORTED
#define PNG_READ_SHIFT_SUPPORTED
#define PNG_READ_sPLT_SUPPORTED
#define PNG_READ_sRGB_SUPPORTED
#define PNG_READ_STRIP_16_TO_8_SUPPORTED
#define PNG_READ_STRIP_ALPHA_SUPPORTED
#define PNG_READ_SUPPORTED
#define PNG_READ_SWAP_ALPHA_SUPPORTED
#define PNG_READ_SWAP_SUPPORTED
#define PNG_READ_tEXt_SUPPORTED
#define PNG_READ_TEXT_SUPPORTED
#define PNG_READ_tIME_SUPPORTED
#define PNG_READ_TRANSFORMS_SUPPORTED
#define PNG_READ_tRNS_SUPPORTED
#define PNG_READ_UNKNOWN_CHUNKS_SUPPORTED
#define PNG_READ_USER_CHUNKS_SUPPORTED
#define PNG_READ_USER_TRANSFORM_SUPPORTED
#define PNG_READ_bKGD_SUPPORTED
#define PNG_READ_cHRM_SUPPORTED
#define PNG_READ_gAMA_SUPPORTED
#define PNG_READ_hIST_SUPPORTED
#define PNG_READ_iCCP_SUPPORTED
#define PNG_READ_iTXt_SUPPORTED
#define PNG_READ_oFFs_SUPPORTED
#define PNG_READ_pCAL_SUPPORTED
#define PNG_READ_pHYs_SUPPORTED
#define PNG_READ_sBIT_SUPPORTED
#define PNG_READ_sCAL_SUPPORTED
#define PNG_READ_sPLT_SUPPORTED
#define PNG_READ_sRGB_SUPPORTED
#define PNG_READ_tEXt_SUPPORTED
#define PNG_READ_tIME_SUPPORTED
#define PNG_READ_tRNS_SUPPORTED
#define PNG_READ_zTXt_SUPPORTED
#define PNG_SAVE_INT_32_SUPPORTED
#define PNG_sBIT_SUPPORTED
#define PNG_sCAL_SUPPORTED
/*#undef PNG_SAVE_INT_32_SUPPORTED*/
#define PNG_SAVE_UNKNOWN_CHUNKS_SUPPORTED
#define PNG_SEQUENTIAL_READ_SUPPORTED
#define PNG_SET_CHUNK_CACHE_LIMIT_SUPPORTED
#define PNG_SET_CHUNK_MALLOC_LIMIT_SUPPORTED
#define PNG_SETJMP_SUPPORTED
#define PNG_SET_OPTION_SUPPORTED
#define PNG_SET_UNKNOWN_CHUNKS_SUPPORTED
#define PNG_SET_USER_LIMITS_SUPPORTED
#define PNG_sPLT_SUPPORTED
#define PNG_sRGB_SUPPORTED
#define PNG_SIMPLIFIED_READ_AFIRST_SUPPORTED
#define PNG_SIMPLIFIED_READ_BGR_SUPPORTED
#define PNG_SIMPLIFIED_READ_SUPPORTED
/*#undef PNG_SIMPLIFIED_WRITE_AFIRST_SUPPORTED*/
/*#undef PNG_SIMPLIFIED_WRITE_BGR_SUPPORTED*/
/*#undef PNG_SIMPLIFIED_WRITE_SUPPORTED*/
#define PNG_STDIO_SUPPORTED
#define PNG_
tEXt
_SUPPORTED
#define PNG_
STORE_UNKNOWN_CHUNKS
_SUPPORTED
#define PNG_TEXT_SUPPORTED
#define PNG_TIME_RFC1123_SUPPORTED
#define PNG_tIME_SUPPORTED
#define PNG_tRNS_SUPPORTED
#define PNG_UNKNOWN_CHUNKS_SUPPORTED
#define PNG_USER_CHUNKS_SUPPORTED
#define PNG_USER_LIMITS_SUPPORTED
...
...
@@ -172,6 +153,94 @@
#define PNG_USER_TRANSFORM_INFO_SUPPORTED
#define PNG_USER_TRANSFORM_PTR_SUPPORTED
#define PNG_WARNINGS_SUPPORTED
/*#undef PNG_WRITE_16BIT_SUPPORTED*/
/*#undef PNG_WRITE_ANCILLARY_CHUNKS_SUPPORTED*/
/*#undef PNG_WRITE_BGR_SUPPORTED*/
/*#undef PNG_WRITE_CHECK_FOR_INVALID_INDEX_SUPPORTED*/
/*#undef PNG_WRITE_COMPRESSED_TEXT_SUPPORTED*/
/*#undef PNG_WRITE_CUSTOMIZE_COMPRESSION_SUPPORTED*/
/*#undef PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION_SUPPORTED*/
/*#undef PNG_WRITE_FILLER_SUPPORTED*/
/*#undef PNG_WRITE_FILTER_SUPPORTED*/
/*#undef PNG_WRITE_FLUSH_SUPPORTED*/
/*#undef PNG_WRITE_GET_PALETTE_MAX_SUPPORTED*/
/*#undef PNG_WRITE_INTERLACING_SUPPORTED*/
/*#undef PNG_WRITE_INT_FUNCTIONS_SUPPORTED*/
/*#undef PNG_WRITE_INVERT_ALPHA_SUPPORTED*/
/*#undef PNG_WRITE_INVERT_SUPPORTED*/
/*#undef PNG_WRITE_OPTIMIZE_CMF_SUPPORTED*/
/*#undef PNG_WRITE_PACKSWAP_SUPPORTED*/
/*#undef PNG_WRITE_PACK_SUPPORTED*/
/*#undef PNG_WRITE_SHIFT_SUPPORTED*/
/*#undef PNG_WRITE_SUPPORTED*/
/*#undef PNG_WRITE_SWAP_ALPHA_SUPPORTED*/
/*#undef PNG_WRITE_SWAP_SUPPORTED*/
/*#undef PNG_WRITE_TEXT_SUPPORTED*/
/*#undef PNG_WRITE_TRANSFORMS_SUPPORTED*/
/*#undef PNG_WRITE_UNKNOWN_CHUNKS_SUPPORTED*/
/*#undef PNG_WRITE_USER_TRANSFORM_SUPPORTED*/
/*#undef PNG_WRITE_WEIGHTED_FILTER_SUPPORTED*/
/*#undef PNG_WRITE_bKGD_SUPPORTED*/
/*#undef PNG_WRITE_cHRM_SUPPORTED*/
/*#undef PNG_WRITE_gAMA_SUPPORTED*/
/*#undef PNG_WRITE_hIST_SUPPORTED*/
/*#undef PNG_WRITE_iCCP_SUPPORTED*/
/*#undef PNG_WRITE_iTXt_SUPPORTED*/
/*#undef PNG_WRITE_oFFs_SUPPORTED*/
/*#undef PNG_WRITE_pCAL_SUPPORTED*/
/*#undef PNG_WRITE_pHYs_SUPPORTED*/
/*#undef PNG_WRITE_sBIT_SUPPORTED*/
/*#undef PNG_WRITE_sCAL_SUPPORTED*/
/*#undef PNG_WRITE_sPLT_SUPPORTED*/
/*#undef PNG_WRITE_sRGB_SUPPORTED*/
/*#undef PNG_WRITE_tEXt_SUPPORTED*/
/*#undef PNG_WRITE_tIME_SUPPORTED*/
/*#undef PNG_WRITE_tRNS_SUPPORTED*/
/*#undef PNG_WRITE_zTXt_SUPPORTED*/
#define PNG_bKGD_SUPPORTED
#define PNG_cHRM_SUPPORTED
#define PNG_gAMA_SUPPORTED
#define PNG_hIST_SUPPORTED
#define PNG_iCCP_SUPPORTED
#define PNG_iTXt_SUPPORTED
#define PNG_oFFs_SUPPORTED
#define PNG_pCAL_SUPPORTED
#define PNG_pHYs_SUPPORTED
#define PNG_sBIT_SUPPORTED
#define PNG_sCAL_SUPPORTED
#define PNG_sPLT_SUPPORTED
#define PNG_sRGB_SUPPORTED
#define PNG_tEXt_SUPPORTED
#define PNG_tIME_SUPPORTED
#define PNG_tRNS_SUPPORTED
#define PNG_zTXt_SUPPORTED
/* end of options */
/* settings */
#define PNG_API_RULE 0
#define PNG_DEFAULT_READ_MACROS 1
#define PNG_GAMMA_THRESHOLD_FIXED 5000
#define PNG_IDAT_READ_SIZE PNG_ZBUF_SIZE
#define PNG_INFLATE_BUF_SIZE 1024
#define PNG_LINKAGE_API extern
#define PNG_LINKAGE_CALLBACK extern
#define PNG_LINKAGE_DATA extern
#define PNG_LINKAGE_FUNCTION extern
#define PNG_MAX_GAMMA_8 11
#define PNG_QUANTIZE_BLUE_BITS 5
#define PNG_QUANTIZE_GREEN_BITS 5
#define PNG_QUANTIZE_RED_BITS 5
#define PNG_TEXT_Z_DEFAULT_COMPRESSION (-1)
#define PNG_TEXT_Z_DEFAULT_STRATEGY 0
#define PNG_USER_CHUNK_CACHE_MAX 0
#define PNG_USER_CHUNK_MALLOC_MAX 0
#define PNG_USER_HEIGHT_MAX 1000000
#define PNG_USER_WIDTH_MAX 1000000
#define PNG_ZBUF_SIZE 8192
#define PNG_ZLIB_VERNUM 0
#define PNG_Z_DEFAULT_COMPRESSION (-1)
#define PNG_Z_DEFAULT_NOFILTER_STRATEGY 0
#define PNG_Z_DEFAULT_STRATEGY 1
#define PNG_sCAL_PRECISION 5
#define PNG_sRGB_PROFILE_CHECKS 2
/* end of settings */
#endif
/* PNGLCONF_H */
src/share/native/sun/awt/libpng/pngmem.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngpread.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngpriv.h
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngread.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngrio.c
浏览文件 @
102027ce
...
...
@@ -29,8 +29,8 @@
* However, the following notice accompanied the original version of this
* file and, per its terms, should not be removed:
*
* Last changed in libpng 1.
5.0 [January 6, 2011
]
* Copyright (c) 1998-201
1
Glenn Randers-Pehrson
* Last changed in libpng 1.
6.17 [March 26, 2015
]
* Copyright (c) 1998-201
5
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.)
*
...
...
@@ -54,10 +54,10 @@
* reads from a file pointer. Note that this routine sometimes gets called
* with very small lengths, so you should implement some kind of simple
* buffering if you are using unbuffered reads. This should never be asked
* to read more th
en 64K on a 16
bit machine.
* to read more th
an 64K on a 16-
bit machine.
*/
void
/* PRIVATE */
png_read_data
(
png_structp
png_ptr
,
png_bytep
data
,
png_size_t
length
)
png_read_data
(
png_struct
r
p
png_ptr
,
png_bytep
data
,
png_size_t
length
)
{
png_debug1
(
4
,
"reading %d bytes"
,
(
int
)
length
);
...
...
@@ -74,7 +74,6 @@ png_read_data(png_structp png_ptr, png_bytep data, png_size_t length)
* read_data function and use it at run time with png_set_read_fn(), rather
* than changing the library.
*/
# ifndef USE_FAR_KEYWORD
void
PNGCBAPI
png_default_read_data
(
png_structp
png_ptr
,
png_bytep
data
,
png_size_t
length
)
{
...
...
@@ -86,68 +85,11 @@ png_default_read_data(png_structp png_ptr, png_bytep data, png_size_t length)
/* fread() returns 0 on error, so it is OK to store this in a png_size_t
* instead of an int, which is what fread() actually returns.
*/
check
=
fread
(
data
,
1
,
length
,
(
png_FILE_p
)
png_ptr
->
io_ptr
);
check
=
fread
(
data
,
1
,
length
,
png_voidcast
(
png_FILE_p
,
png_ptr
->
io_ptr
)
);
if
(
check
!=
length
)
png_error
(
png_ptr
,
"Read Error"
);
}
# else
/* This is the model-independent version. Since the standard I/O library
can't handle far buffers in the medium and small models, we have to copy
the data.
*/
#define NEAR_BUF_SIZE 1024
#define MIN(a,b) (a <= b ? a : b)
static
void
PNGCBAPI
png_default_read_data
(
png_structp
png_ptr
,
png_bytep
data
,
png_size_t
length
)
{
png_size_t
check
;
png_byte
*
n_data
;
png_FILE_p
io_ptr
;
if
(
png_ptr
==
NULL
)
return
;
/* Check if data really is near. If so, use usual code. */
n_data
=
(
png_byte
*
)
CVT_PTR_NOCHECK
(
data
);
io_ptr
=
(
png_FILE_p
)
CVT_PTR
(
png_ptr
->
io_ptr
);
if
((
png_bytep
)
n_data
==
data
)
{
check
=
fread
(
n_data
,
1
,
length
,
io_ptr
);
}
else
{
png_byte
buf
[
NEAR_BUF_SIZE
];
png_size_t
read
,
remaining
,
err
;
check
=
0
;
remaining
=
length
;
do
{
read
=
MIN
(
NEAR_BUF_SIZE
,
remaining
);
err
=
fread
(
buf
,
1
,
read
,
io_ptr
);
png_memcpy
(
data
,
buf
,
read
);
/* copy far buffer to near buffer */
if
(
err
!=
read
)
break
;
else
check
+=
err
;
data
+=
read
;
remaining
-=
read
;
}
while
(
remaining
!=
0
);
}
if
((
png_uint_32
)
check
!=
(
png_uint_32
)
length
)
png_error
(
png_ptr
,
"read Error"
);
}
# endif
#endif
/* This function allows the application to supply a new input function
...
...
@@ -170,7 +112,7 @@ png_default_read_data(png_structp png_ptr, png_bytep data, png_size_t length)
* be used.
*/
void
PNGAPI
png_set_read_fn
(
png_structp
png_ptr
,
png_voidp
io_ptr
,
png_set_read_fn
(
png_struct
r
p
png_ptr
,
png_voidp
io_ptr
,
png_rw_ptr
read_data_fn
)
{
if
(
png_ptr
==
NULL
)
...
...
@@ -188,6 +130,7 @@ png_set_read_fn(png_structp png_ptr, png_voidp io_ptr,
png_ptr
->
read_data_fn
=
read_data_fn
;
#endif
#ifdef PNG_WRITE_SUPPORTED
/* It is an error to write to a read device */
if
(
png_ptr
->
write_data_fn
!=
NULL
)
{
...
...
@@ -196,9 +139,10 @@ png_set_read_fn(png_structp png_ptr, png_voidp io_ptr,
"Can't set both read_data_fn and write_data_fn in the"
" same structure"
);
}
#endif
#ifdef PNG_WRITE_FLUSH_SUPPORTED
png_ptr
->
output_flush_fn
=
NULL
;
#endif
}
#endif
/*
PNG_READ_SUPPORTE
D */
#endif
/*
REA
D */
src/share/native/sun/awt/libpng/pngrtran.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngrutil.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngset.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngstruct.h
浏览文件 @
102027ce
...
...
@@ -29,12 +29,11 @@
* However, the following notice accompanied the original version of this
* file and, per its terms, should not be removed:
*
* Copyright (c) 1998-2011 Glenn Randers-Pehrson
* Last changed in libpng 1.6.18 [July 23, 2015]
* Copyright (c) 1998-2015 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
*
* Last changed in libpng 1.5.4 [July 7, 2011]
*
* This code is released under the libpng license.
* For conditions of distribution and use, see the disclaimer
* and license in png.h
...
...
@@ -52,13 +51,130 @@
* in this structure and is required for decompressing the LZ compressed
* data in PNG files.
*/
#ifndef ZLIB_CONST
/* We must ensure that zlib uses 'const' in declarations. */
# define ZLIB_CONST
#endif
#include "zlib.h"
#ifdef const
/* zlib.h sometimes #defines const to nothing, undo this. */
# undef const
#endif
/* zlib.h has mediocre z_const use before 1.2.6, this stuff is for compatibility
* with older builds.
*/
#if ZLIB_VERNUM < 0x1260
# define PNGZ_MSG_CAST(s) png_constcast(char*,s)
# define PNGZ_INPUT_CAST(b) png_constcast(png_bytep,b)
#else
# define PNGZ_MSG_CAST(s) (s)
# define PNGZ_INPUT_CAST(b) (b)
#endif
/* zlib.h declares a magic type 'uInt' that limits the amount of data that zlib
* can handle at once. This type need be no larger than 16 bits (so maximum of
* 65535), this define allows us to discover how big it is, but limited by the
* maximuum for png_size_t. The value can be overriden in a library build
* (pngusr.h, or set it in CPPFLAGS) and it works to set it to a considerably
* lower value (e.g. 255 works). A lower value may help memory usage (slightly)
* and may even improve performance on some systems (and degrade it on others.)
*/
#ifndef ZLIB_IO_MAX
# define ZLIB_IO_MAX ((uInt)-1)
#endif
#ifdef PNG_WRITE_SUPPORTED
/* The type of a compression buffer list used by the write code. */
typedef
struct
png_compression_buffer
{
struct
png_compression_buffer
*
next
;
png_byte
output
[
1
];
/* actually zbuf_size */
}
png_compression_buffer
,
*
png_compression_bufferp
;
#define PNG_COMPRESSION_BUFFER_SIZE(pp)\
(offsetof(png_compression_buffer, output) + (pp)->zbuffer_size)
#endif
/* Colorspace support; structures used in png_struct, png_info and in internal
* functions to hold and communicate information about the color space.
*
* PNG_COLORSPACE_SUPPORTED is only required if the application will perform
* colorspace corrections, otherwise all the colorspace information can be
* skipped and the size of libpng can be reduced (significantly) by compiling
* out the colorspace support.
*/
#ifdef PNG_COLORSPACE_SUPPORTED
/* The chromaticities of the red, green and blue colorants and the chromaticity
* of the corresponding white point (i.e. of rgb(1.0,1.0,1.0)).
*/
typedef
struct
png_xy
{
png_fixed_point
redx
,
redy
;
png_fixed_point
greenx
,
greeny
;
png_fixed_point
bluex
,
bluey
;
png_fixed_point
whitex
,
whitey
;
}
png_xy
;
/* The same data as above but encoded as CIE XYZ values. When this data comes
* from chromaticities the sum of the Y values is assumed to be 1.0
*/
typedef
struct
png_XYZ
{
png_fixed_point
red_X
,
red_Y
,
red_Z
;
png_fixed_point
green_X
,
green_Y
,
green_Z
;
png_fixed_point
blue_X
,
blue_Y
,
blue_Z
;
}
png_XYZ
;
#endif
/* COLORSPACE */
#if defined(PNG_COLORSPACE_SUPPORTED) || defined(PNG_GAMMA_SUPPORTED)
/* A colorspace is all the above plus, potentially, profile information;
* however at present libpng does not use the profile internally so it is only
* stored in the png_info struct (if iCCP is supported.) The rendering intent
* is retained here and is checked.
*
* The file gamma encoding information is also stored here and gamma correction
* is done by libpng, whereas color correction must currently be done by the
* application.
*/
typedef
struct
png_colorspace
{
#ifdef PNG_GAMMA_SUPPORTED
png_fixed_point
gamma
;
/* File gamma */
#endif
#ifdef PNG_COLORSPACE_SUPPORTED
png_xy
end_points_xy
;
/* End points as chromaticities */
png_XYZ
end_points_XYZ
;
/* End points as CIE XYZ colorant values */
png_uint_16
rendering_intent
;
/* Rendering intent of a profile */
#endif
/* Flags are always defined to simplify the code. */
png_uint_16
flags
;
/* As defined below */
}
png_colorspace
,
*
PNG_RESTRICT
png_colorspacerp
;
typedef
const
png_colorspace
*
PNG_RESTRICT
png_const_colorspacerp
;
/* General flags for the 'flags' field */
#define PNG_COLORSPACE_HAVE_GAMMA 0x0001
#define PNG_COLORSPACE_HAVE_ENDPOINTS 0x0002
#define PNG_COLORSPACE_HAVE_INTENT 0x0004
#define PNG_COLORSPACE_FROM_gAMA 0x0008
#define PNG_COLORSPACE_FROM_cHRM 0x0010
#define PNG_COLORSPACE_FROM_sRGB 0x0020
#define PNG_COLORSPACE_ENDPOINTS_MATCH_sRGB 0x0040
#define PNG_COLORSPACE_MATCHES_sRGB 0x0080
/* exact match on profile */
#define PNG_COLORSPACE_INVALID 0x8000
#define PNG_COLORSPACE_CANCEL(flags) (0xffff ^ (flags))
#endif
/* COLORSPACE || GAMMA */
struct
png_struct_def
{
#ifdef PNG_SETJMP_SUPPORTED
jmp_buf
longjmp_buffer
;
/* used in png_error
*/
jmp_buf
jmp_buf_local
;
/* New name in 1.6.0 for jmp_buf in png_struct
*/
png_longjmp_ptr
longjmp_fn
;
/* setjmp non-local goto function. */
jmp_buf
*
jmp_buf_ptr
;
/* passed to longjmp_fn */
size_t
jmp_buf_size
;
/* size of the above, if allocated */
#endif
png_error_ptr
error_fn
;
/* function for printing errors and aborting */
#ifdef PNG_WARNINGS_SUPPORTED
...
...
@@ -91,22 +207,12 @@ struct png_struct_def
png_uint_32
flags
;
/* flags indicating various things to libpng */
png_uint_32
transformations
;
/* which transformations to perform */
z_stream
zstream
;
/* pointer to decompression structure (below) */
png_bytep
zbuf
;
/* buffer for zlib */
uInt
zbuf_size
;
/* size of zbuf (typically 65536) */
#ifdef PNG_WRITE_SUPPORTED
png_uint_32
zowner
;
/* ID (chunk type) of zstream owner, 0 if none */
z_stream
zstream
;
/* decompression structure */
/* Added in 1.5.4: state to keep track of whether the zstream has been
* initialized and if so whether it is for IDAT or some other chunk.
*/
#define PNG_ZLIB_UNINITIALIZED 0
#define PNG_ZLIB_FOR_IDAT 1
#define PNG_ZLIB_FOR_TEXT 2
/* anything other than IDAT */
#define PNG_ZLIB_USE_MASK 3
/* bottom two bits */
#define PNG_ZLIB_IN_USE 4
/* a flag value */
png_uint_32
zlib_state
;
/* State of zlib initialization */
/* End of material added at libpng 1.5.4 */
#ifdef PNG_WRITE_SUPPORTED
png_compression_bufferp
zbuffer_list
;
/* Created on demand during write */
uInt
zbuffer_size
;
/* size of the actual buffer */
int
zlib_level
;
/* holds zlib compression level */
int
zlib_method
;
/* holds zlib compression method */
...
...
@@ -115,8 +221,7 @@ struct png_struct_def
int
zlib_strategy
;
/* holds zlib compression strategy */
#endif
/* Added at libpng 1.5.4 */
#if defined(PNG_WRITE_COMPRESSED_TEXT_SUPPORTED) || \
defined(PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION_SUPPORTED)
#ifdef PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION_SUPPORTED
int
zlib_text_level
;
/* holds zlib compression level */
int
zlib_text_method
;
/* holds zlib compression method */
int
zlib_text_window_bits
;
/* holds zlib compression window bits */
...
...
@@ -124,6 +229,14 @@ struct png_struct_def
int
zlib_text_strategy
;
/* holds zlib compression strategy */
#endif
/* End of material added at libpng 1.5.4 */
/* Added at libpng 1.6.0 */
#ifdef PNG_WRITE_SUPPORTED
int
zlib_set_level
;
/* Actual values set into the zstream on write */
int
zlib_set_method
;
int
zlib_set_window_bits
;
int
zlib_set_mem_level
;
int
zlib_set_strategy
;
#endif
png_uint_32
width
;
/* width of image in pixels */
png_uint_32
height
;
/* height of image in pixels */
...
...
@@ -132,21 +245,34 @@ struct png_struct_def
png_size_t
rowbytes
;
/* size of row in bytes */
png_uint_32
iwidth
;
/* width of current interlaced row in pixels */
png_uint_32
row_number
;
/* current row in interlace pass */
png_bytep
prev_row
;
/* buffer to save previous (unfiltered) row */
png_bytep
row_buf
;
/* buffer to save current (unfiltered) row */
png_bytep
sub_row
;
/* buffer to save "sub" row when filtering */
png_bytep
up_row
;
/* buffer to save "up" row when filtering */
png_bytep
avg_row
;
/* buffer to save "avg" row when filtering */
png_bytep
paeth_row
;
/* buffer to save "Paeth" row when filtering */
png_row_info
row_info
;
/* used for transformation routines */
png_uint_32
chunk_name
;
/* PNG_CHUNK() id of current chunk */
png_bytep
prev_row
;
/* buffer to save previous (unfiltered) row.
* While reading this is a pointer into
* big_prev_row; while writing it is separately
* allocated if needed.
*/
png_bytep
row_buf
;
/* buffer to save current (unfiltered) row.
* While reading, this is a pointer into
* big_row_buf; while writing it is separately
* allocated.
*/
#ifdef PNG_WRITE_FILTER_SUPPORTED
png_bytep
try_row
;
/* buffer to save trial row when filtering */
png_bytep
tst_row
;
/* buffer to save best trial row when filtering */
#endif
png_size_t
info_rowbytes
;
/* Added in 1.5.4: cache of updated row bytes */
png_uint_32
idat_size
;
/* current IDAT size for read */
png_uint_32
crc
;
/* current chunk CRC value */
png_colorp
palette
;
/* palette from the input file */
png_uint_16
num_palette
;
/* number of color entries in palette */
/* Added at libpng-1.5.10 */
#ifdef PNG_CHECK_FOR_INVALID_INDEX_SUPPORTED
int
num_palette_max
;
/* maximum palette index found in IDAT */
#endif
png_uint_16
num_trans
;
/* number of transparency values */
png_byte
chunk_name
[
5
];
/* null-terminated name of current chunk */
png_byte
compression
;
/* file compression type (always 0) */
png_byte
filter
;
/* file filter type (always 0) */
png_byte
interlaced
;
/* PNG_INTERLACE_NONE, PNG_INTERLACE_ADAM7 */
...
...
@@ -154,12 +280,20 @@ struct png_struct_def
png_byte
do_filter
;
/* row filter flags (see PNG_FILTER_ below ) */
png_byte
color_type
;
/* color type of file */
png_byte
bit_depth
;
/* bit depth of file */
png_byte
usr_bit_depth
;
/* bit depth of users row */
png_byte
usr_bit_depth
;
/* bit depth of users row
: write only
*/
png_byte
pixel_depth
;
/* number of bits per pixel */
png_byte
channels
;
/* number of channels in file */
png_byte
usr_channels
;
/* channels at start of write */
#ifdef PNG_WRITE_SUPPORTED
png_byte
usr_channels
;
/* channels at start of write: write only */
#endif
png_byte
sig_bytes
;
/* magic bytes read/written from start of file */
png_byte
maximum_pixel_depth
;
/* pixel depth used for the row buffers */
png_byte
transformed_pixel_depth
;
/* pixel depth after read/write transforms */
#if PNG_ZLIB_VERNUM >= 0x1240
png_byte
zstream_start
;
/* at start of an input zlib stream */
#endif
/* Zlib >= 1.2.4 */
#if defined(PNG_READ_FILLER_SUPPORTED) || defined(PNG_WRITE_FILLER_SUPPORTED)
png_uint_16
filler
;
/* filler bytes for pixel expansion */
#endif
...
...
@@ -172,7 +306,7 @@ struct png_struct_def
#ifdef PNG_READ_GAMMA_SUPPORTED
png_color_16
background_1
;
/* background normalized to gamma 1.0 */
#endif
#endif
/*
PNG_bKGD_SUPPORTE
D */
#endif
/*
bKG
D */
#ifdef PNG_WRITE_FLUSH_SUPPORTED
png_flush_ptr
output_flush_fn
;
/* Function for flushing output */
...
...
@@ -180,19 +314,20 @@ struct png_struct_def
png_uint_32
flush_rows
;
/* number of rows written since last flush */
#endif
#if
defined(PNG_READ_GAMMA_SUPPORTED) || defined(PNG_READ_BACKGROUND_SUPPORTED)
#if
def PNG_READ_GAMMA_SUPPORTED
int
gamma_shift
;
/* number of "insignificant" bits in 16-bit gamma */
png_fixed_point
gamma
;
/* file gamma value */
png_fixed_point
screen_gamma
;
/* screen gamma value (display_exponent) */
#endif
#if defined(PNG_READ_GAMMA_SUPPORTED) || defined(PNG_READ_BACKGROUND_SUPPORTED)
png_bytep
gamma_table
;
/* gamma table for 8-bit depth files */
png_uint_16pp
gamma_16_table
;
/* gamma table for 16-bit depth files */
#if defined(PNG_READ_BACKGROUND_SUPPORTED) || \
defined(PNG_READ_ALPHA_MODE_SUPPORTED) || \
defined(PNG_READ_RGB_TO_GRAY_SUPPORTED)
png_bytep
gamma_from_1
;
/* converts from 1.0 to screen */
png_bytep
gamma_to_1
;
/* converts from file to 1.0 */
png_uint_16pp
gamma_16_table
;
/* gamma table for 16-bit depth files */
png_uint_16pp
gamma_16_from_1
;
/* converts from 1.0 to screen */
png_uint_16pp
gamma_16_to_1
;
/* converts from file to 1.0 */
#endif
/* READ_BACKGROUND || READ_ALPHA_MODE || RGB_TO_GRAY */
#endif
#if defined(PNG_READ_GAMMA_SUPPORTED) || defined(PNG_sBIT_SUPPORTED)
...
...
@@ -228,14 +363,7 @@ struct png_struct_def
int
process_mode
;
/* what push library is currently doing */
int
cur_palette
;
/* current push library palette index */
# ifdef PNG_TEXT_SUPPORTED
png_size_t
current_text_size
;
/* current size of text input data */
png_size_t
current_text_left
;
/* how much text left to read in input */
png_charp
current_text
;
/* current text chunk buffer */
png_charp
current_text_ptr
;
/* current location in current_text */
# endif
/* PNG_PROGRESSIVE_READ_SUPPORTED && PNG_TEXT_SUPPORTED */
#endif
/* PNG_PROGRESSIVE_READ_SUPPORTED */
#endif
/* PROGRESSIVE_READ */
#if defined(__TURBOC__) && !defined(_Windows) && !defined(__FLAT__)
/* For the Borland special 64K segment handler */
...
...
@@ -251,23 +379,17 @@ struct png_struct_def
png_bytep
quantize_index
;
/* index translation for palette files */
#endif
#if defined(PNG_READ_QUANTIZE_SUPPORTED) || defined(PNG_hIST_SUPPORTED)
png_uint_16p
hist
;
/* histogram */
#endif
#ifdef PNG_WRITE_WEIGHTED_FILTER_SUPPORTED
png_byte
heuristic_method
;
/* heuristic for row filter selection */
png_byte
num_prev_filters
;
/* number of weights for previous rows */
png_bytep
prev_filters
;
/* filter type(s) of previous row(s) */
png_uint_16p
filter_weights
;
/* weight(s) for previous line(s) */
png_uint_16p
inv_filter_weights
;
/* 1/weight(s) for previous line(s) */
png_uint_16p
filter_costs
;
/* relative filter calculation cost */
png_uint_16p
inv_filter_costs
;
/* 1/relative filter calculation cost */
/* Options */
#ifdef PNG_SET_OPTION_SUPPORTED
png_byte
options
;
/* On/off state (up to 4 options) */
#endif
#if PNG_LIBPNG_VER < 10700
/* To do: remove this from libpng-1.7 */
#ifdef PNG_TIME_RFC1123_SUPPORTED
char
time_buffer
[
29
];
/* String to hold RFC 1123 time text */
#endif
#endif
/* New members added in libpng-1.0.6 */
...
...
@@ -275,27 +397,31 @@ struct png_struct_def
#ifdef PNG_USER_CHUNKS_SUPPORTED
png_voidp
user_chunk_ptr
;
#ifdef PNG_READ_USER_CHUNKS_SUPPORTED
png_user_chunk_ptr
read_user_chunk_fn
;
/* user read chunk handler */
#endif
#endif
#ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED
int
num_chunk_list
;
png_bytep
chunk_list
;
#ifdef PNG_SET_UNKNOWN_CHUNKS_SUPPORTED
int
unknown_default
;
/* As PNG_HANDLE_* */
unsigned
int
num_chunk_list
;
/* Number of entries in the list */
png_bytep
chunk_list
;
/* List of png_byte[5]; the textual chunk name
* followed by a PNG_HANDLE_* byte */
#endif
/* New members added in libpng-1.0.3 */
#ifdef PNG_READ_RGB_TO_GRAY_SUPPORTED
png_byte
rgb_to_gray_status
;
/* Added in libpng 1.5.5 to record setting of coefficients: */
png_byte
rgb_to_gray_coefficients_set
;
/* These were changed from png_byte in libpng-1.0.6 */
png_uint_16
rgb_to_gray_red_coeff
;
png_uint_16
rgb_to_gray_green_coeff
;
png_uint_16
rgb_to_gray_blue_coeff
;
/* deleted in 1.5.5: rgb_to_gray_blue_coeff; */
#endif
/* New member added in libpng-1.0.4 (renamed in 1.0.9) */
#if defined(PNG_MNG_FEATURES_SUPPORTED) || \
defined(PNG_READ_EMPTY_PLTE_SUPPORTED) || \
defined(PNG_WRITE_EMPTY_PLTE_SUPPORTED)
#if defined(PNG_MNG_FEATURES_SUPPORTED)
/* Changed from png_byte to png_uint_32 at version 1.2.0 */
png_uint_32
mng_features_permitted
;
#endif
...
...
@@ -345,21 +471,41 @@ struct png_struct_def
#endif
/* New member added in libpng-1.0.25 and 1.2.17 */
#ifdef PNG_UNKNOWN_CHUNKS_SUPPORTED
/* Storage for unknown chunk that the library doesn't recognize. */
#ifdef PNG_READ_UNKNOWN_CHUNKS_SUPPORTED
/* Temporary storage for unknown chunk that the library doesn't recognize,
* used while reading the chunk.
*/
png_unknown_chunk
unknown_chunk
;
#endif
/* New member
s
added in libpng-1.2.26 */
/* New member added in libpng-1.2.26 */
png_size_t
old_big_row_buf_size
;
png_size_t
old_prev_row_size
;
#ifdef PNG_READ_SUPPORTED
/* New member added in libpng-1.2.30 */
png_charp
chunkdata
;
/* buffer for reading chunk data */
png_bytep
read_buffer
;
/* buffer for reading chunk data */
png_alloc_size_t
read_buffer_size
;
/* current size of the buffer */
#endif
#ifdef PNG_SEQUENTIAL_READ_SUPPORTED
uInt
IDAT_read_size
;
/* limit on read buffer size for IDAT */
#endif
#ifdef PNG_IO_STATE_SUPPORTED
/* New member added in libpng-1.4.0 */
png_uint_32
io_state
;
#endif
/* New member added in libpng-1.5.6 */
png_bytep
big_prev_row
;
/* New member added in libpng-1.5.7 */
void
(
*
read_filter
[
PNG_FILTER_VALUE_LAST
-
1
])(
png_row_infop
row_info
,
png_bytep
row
,
png_const_bytep
prev_row
);
#ifdef PNG_READ_SUPPORTED
#if defined(PNG_COLORSPACE_SUPPORTED) || defined(PNG_GAMMA_SUPPORTED)
png_colorspace
colorspace
;
#endif
#endif
};
#endif
/* PNGSTRUCT_H */
src/share/native/sun/awt/libpng/pngtest.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngtrans.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngwio.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngwrite.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngwtran.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
src/share/native/sun/awt/libpng/pngwutil.c
浏览文件 @
102027ce
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录