mirror of https://github.com/stella-emu/stella.git
Updated PNG library to latest release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3149 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
parent
6d8b115b34
commit
31e59f12dc
14
Changes.txt
14
Changes.txt
|
@ -14,18 +14,18 @@
|
||||||
|
|
||||||
4.5 to 4.6: (March xx, 2015)
|
4.5 to 4.6: (March xx, 2015)
|
||||||
|
|
||||||
|
* Finally fixed fullscreen rendering issues on some OpenGL
|
||||||
|
implementations in Linux (mostly Intel-specific). Basically, the
|
||||||
|
concept of 'dirty updates' has been removed; the window is now
|
||||||
|
updated continuously. This may also fix issues some people were
|
||||||
|
having with triple-buffering in Windows Direct3D, etc.
|
||||||
|
|
||||||
* Reverted some minor C++11 features (std::regex and cbegin/cend
|
* Reverted some minor C++11 features (std::regex and cbegin/cend
|
||||||
iterators) in a few places, since otherwise GCC 4.9 is required to
|
iterators) in a few places, since otherwise GCC 4.9 is required to
|
||||||
compile Stella, and it isn't available on many systems yet. These
|
compile Stella, and it isn't available on many systems yet. These
|
||||||
changes allow Stella to be built with GCC 4.8, which is present in
|
changes allow Stella to be built with GCC 4.8, which is present in
|
||||||
the latest 'long term release' of Ubuntu.
|
the latest 'long term release' of Ubuntu.
|
||||||
|
|
||||||
* Finally fixed fullscreen rendering issues on some OpenGL
|
|
||||||
implementations in Linux (mostly Intel-specific). Basically, the
|
|
||||||
concept of 'dirty updates' as been removed; the window is now
|
|
||||||
updated continuously. This may also fix issues some people were
|
|
||||||
having with triple-buffering, etc.
|
|
||||||
|
|
||||||
* Fixed error messages on state loading; sometimes multiple messages
|
* Fixed error messages on state loading; sometimes multiple messages
|
||||||
were being added together and displayed.
|
were being added together and displayed.
|
||||||
|
|
||||||
|
@ -38,6 +38,8 @@
|
||||||
|
|
||||||
* DataGridWidgets in the debugger now respond to keypad '+' and '-'.
|
* DataGridWidgets in the debugger now respond to keypad '+' and '-'.
|
||||||
|
|
||||||
|
* Updated included PNG library to latest stable version.
|
||||||
|
|
||||||
-Have fun!
|
-Have fun!
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
/* png.c - location for general purpose libpng functions
|
/* png.c - location for general purpose libpng functions
|
||||||
*
|
*
|
||||||
* Last changed in libpng 1.6.15 [November 20, 2014]
|
* Last changed in libpng 1.6.16 [December 22, 2014]
|
||||||
* Copyright (c) 1998-2014 Glenn Randers-Pehrson
|
* Copyright (c) 1998-2014 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.)
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
#include "pngpriv.h"
|
#include "pngpriv.h"
|
||||||
|
|
||||||
/* Generate a compiler error if there is an old png.h in the search path. */
|
/* Generate a compiler error if there is an old png.h in the search path. */
|
||||||
typedef png_libpng_version_1_6_15 Your_png_h_is_not_version_1_6_15;
|
typedef png_libpng_version_1_6_16 Your_png_h_is_not_version_1_6_16;
|
||||||
|
|
||||||
/* Tells libpng that we have already handled the first "num_bytes" bytes
|
/* Tells libpng that we have already handled the first "num_bytes" bytes
|
||||||
* of the PNG file signature. If the PNG data is embedded into another
|
* of the PNG file signature. If the PNG data is embedded into another
|
||||||
|
@ -769,13 +769,13 @@ png_get_copyright(png_const_structrp png_ptr)
|
||||||
#else
|
#else
|
||||||
# ifdef __STDC__
|
# ifdef __STDC__
|
||||||
return PNG_STRING_NEWLINE \
|
return PNG_STRING_NEWLINE \
|
||||||
"libpng version 1.6.15 - November 20, 2014" PNG_STRING_NEWLINE \
|
"libpng version 1.6.16 - December 22, 2014" PNG_STRING_NEWLINE \
|
||||||
"Copyright (c) 1998-2014 Glenn Randers-Pehrson" PNG_STRING_NEWLINE \
|
"Copyright (c) 1998-2014 Glenn Randers-Pehrson" PNG_STRING_NEWLINE \
|
||||||
"Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \
|
"Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \
|
||||||
"Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc." \
|
"Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc." \
|
||||||
PNG_STRING_NEWLINE;
|
PNG_STRING_NEWLINE;
|
||||||
# else
|
# else
|
||||||
return "libpng version 1.6.15 - November 20, 2014\
|
return "libpng version 1.6.16 - December 22, 2014\
|
||||||
Copyright (c) 1998-2014 Glenn Randers-Pehrson\
|
Copyright (c) 1998-2014 Glenn Randers-Pehrson\
|
||||||
Copyright (c) 1996-1997 Andreas Dilger\
|
Copyright (c) 1996-1997 Andreas Dilger\
|
||||||
Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.";
|
Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.";
|
||||||
|
@ -1075,7 +1075,7 @@ png_colorspace_set_gamma(png_const_structrp png_ptr,
|
||||||
png_colorspacerp colorspace, png_fixed_point gAMA)
|
png_colorspacerp colorspace, png_fixed_point gAMA)
|
||||||
{
|
{
|
||||||
/* Changed in libpng-1.5.4 to limit the values to ensure overflow can't
|
/* Changed in libpng-1.5.4 to limit the values to ensure overflow can't
|
||||||
* occur. Since the fixed point representation is assymetrical it is
|
* occur. Since the fixed point representation is asymetrical it is
|
||||||
* possible for 1/gamma to overflow the limit of 21474 and this means the
|
* possible for 1/gamma to overflow the limit of 21474 and this means the
|
||||||
* gamma value must be at least 5/100000 and hence at most 20000.0. For
|
* gamma value must be at least 5/100000 and hence at most 20000.0. For
|
||||||
* safety the limits here are a little narrower. The values are 0.00016 to
|
* safety the limits here are a little narrower. The values are 0.00016 to
|
||||||
|
@ -1324,7 +1324,7 @@ png_XYZ_from_xy(png_XYZ *XYZ, const png_xy *xy)
|
||||||
* (1/white-y), so we can immediately see that as white-y approaches 0 the
|
* (1/white-y), so we can immediately see that as white-y approaches 0 the
|
||||||
* accuracy inherent in the cHRM chunk drops off substantially.
|
* accuracy inherent in the cHRM chunk drops off substantially.
|
||||||
*
|
*
|
||||||
* libpng arithmetic: a simple invertion of the above equations
|
* libpng arithmetic: a simple inversion of the above equations
|
||||||
* ------------------------------------------------------------
|
* ------------------------------------------------------------
|
||||||
*
|
*
|
||||||
* white_scale = 1/white-y
|
* white_scale = 1/white-y
|
||||||
|
@ -1817,7 +1817,7 @@ png_icc_profile_error(png_const_structrp png_ptr, png_colorspacerp colorspace,
|
||||||
PNG_UNUSED(pos)
|
PNG_UNUSED(pos)
|
||||||
|
|
||||||
/* This is recoverable, but make it unconditionally an app_error on write to
|
/* This is recoverable, but make it unconditionally an app_error on write to
|
||||||
* avoid writing invalid ICC profiles into PNG files. (I.e. we handle them
|
* avoid writing invalid ICC profiles into PNG files (i.e., we handle them
|
||||||
* on read, with a warning, but on write unless the app turns off
|
* on read, with a warning, but on write unless the app turns off
|
||||||
* application errors the PNG won't be written.)
|
* application errors the PNG won't be written.)
|
||||||
*/
|
*/
|
||||||
|
@ -1836,7 +1836,7 @@ png_colorspace_set_sRGB(png_const_structrp png_ptr, png_colorspacerp colorspace,
|
||||||
/* sRGB sets known gamma, end points and (from the chunk) intent. */
|
/* sRGB sets known gamma, end points and (from the chunk) intent. */
|
||||||
/* IMPORTANT: these are not necessarily the values found in an ICC profile
|
/* IMPORTANT: these are not necessarily the values found in an ICC profile
|
||||||
* because ICC profiles store values adapted to a D50 environment; it is
|
* because ICC profiles store values adapted to a D50 environment; it is
|
||||||
* expected that the ICC profile mediaWhitePointTag will be D50, see the
|
* expected that the ICC profile mediaWhitePointTag will be D50; see the
|
||||||
* checks and code elsewhere to understand this better.
|
* checks and code elsewhere to understand this better.
|
||||||
*
|
*
|
||||||
* These XYZ values, which are accurate to 5dp, produce rgb to gray
|
* These XYZ values, which are accurate to 5dp, produce rgb to gray
|
||||||
|
@ -2461,6 +2461,17 @@ png_colorspace_set_rgb_coefficients(png_structrp png_ptr)
|
||||||
|
|
||||||
#endif /* COLORSPACE */
|
#endif /* COLORSPACE */
|
||||||
|
|
||||||
|
#ifdef __GNUC__
|
||||||
|
/* This exists solely to work round a warning from GNU C. */
|
||||||
|
static int /* PRIVATE */
|
||||||
|
png_gt(size_t a, size_t b)
|
||||||
|
{
|
||||||
|
return a > b;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
# define png_gt(a,b) ((a) > (b))
|
||||||
|
#endif
|
||||||
|
|
||||||
void /* PRIVATE */
|
void /* PRIVATE */
|
||||||
png_check_IHDR(png_const_structrp png_ptr,
|
png_check_IHDR(png_const_structrp png_ptr,
|
||||||
png_uint_32 width, png_uint_32 height, int bit_depth,
|
png_uint_32 width, png_uint_32 height, int bit_depth,
|
||||||
|
@ -2480,6 +2491,28 @@ png_check_IHDR(png_const_structrp png_ptr,
|
||||||
png_warning(png_ptr, "Invalid image width in IHDR");
|
png_warning(png_ptr, "Invalid image width in IHDR");
|
||||||
error = 1;
|
error = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
else if (png_gt(width,
|
||||||
|
(PNG_SIZE_MAX >> 3) /* 8-byte RGBA pixels */
|
||||||
|
- 48 /* big_row_buf hack */
|
||||||
|
- 1 /* filter byte */
|
||||||
|
- 7*8 /* rounding width to multiple of 8 pix */
|
||||||
|
- 8)) /* extra max_pixel_depth pad */
|
||||||
|
{
|
||||||
|
/* The size of the row must be within the limits of this architecture.
|
||||||
|
* Because the read code can perform arbitrary transformations the
|
||||||
|
* maximum size is checked here. Because the code in png_read_start_row
|
||||||
|
* adds extra space "for safety's sake" in several places a conservative
|
||||||
|
* limit is used here.
|
||||||
|
*
|
||||||
|
* NOTE: it would be far better to check the size that is actually used,
|
||||||
|
* but the effect in the real world is minor and the changes are more
|
||||||
|
* extensive, therefore much more dangerous and much more difficult to
|
||||||
|
* write in a way that avoids compiler warnings.
|
||||||
|
*/
|
||||||
|
png_warning(png_ptr, "Image width is too large for this architecture");
|
||||||
|
error = 1;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
# ifdef PNG_SET_USER_LIMITS_SUPPORTED
|
# ifdef PNG_SET_USER_LIMITS_SUPPORTED
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
/* png.h - header file for PNG reference library
|
/* png.h - header file for PNG reference library
|
||||||
*
|
*
|
||||||
* libpng version 1.6.15, November 20, 2014
|
* libpng version 1.6.16, December 22, 2014
|
||||||
* Copyright (c) 1998-2014 Glenn Randers-Pehrson
|
* Copyright (c) 1998-2014 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.6.15, November 20, 2014: Glenn
|
* libpng versions 0.97, January 1998, through 1.6.16, December 22, 2014: Glenn
|
||||||
* See also "Contributing Authors", below.
|
* See also "Contributing Authors", below.
|
||||||
*
|
*
|
||||||
* Note about libpng version numbers:
|
* Note about libpng version numbers:
|
||||||
|
@ -209,6 +209,9 @@
|
||||||
* 1.6.15beta01-08 16 10615 16.so.16.15[.0]
|
* 1.6.15beta01-08 16 10615 16.so.16.15[.0]
|
||||||
* 1.6.15rc01-03 16 10615 16.so.16.15[.0]
|
* 1.6.15rc01-03 16 10615 16.so.16.15[.0]
|
||||||
* 1.6.15 16 10615 16.so.16.15[.0]
|
* 1.6.15 16 10615 16.so.16.15[.0]
|
||||||
|
* 1.6.16beta01-03 16 10616 16.so.16.16[.0]
|
||||||
|
* 1.6.16rc01-02 16 10616 16.so.16.16[.0]
|
||||||
|
* 1.6.16 16 10616 16.so.16.16[.0]
|
||||||
*
|
*
|
||||||
* Henceforth the source version will match the shared-library major
|
* Henceforth the source version will match the shared-library major
|
||||||
* and minor numbers; the shared-library major version number will be
|
* and minor numbers; the shared-library major version number will be
|
||||||
|
@ -240,7 +243,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.6.15, November 20, 2014, are
|
* libpng versions 1.2.6, August 15, 2004, through 1.6.16, December 22, 2014, are
|
||||||
* Copyright (c) 2004, 2006-2014 Glenn Randers-Pehrson, and are
|
* Copyright (c) 2004, 2006-2014 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:
|
||||||
|
@ -352,13 +355,13 @@
|
||||||
* Y2K compliance in libpng:
|
* Y2K compliance in libpng:
|
||||||
* =========================
|
* =========================
|
||||||
*
|
*
|
||||||
* November 20, 2014
|
* December 22, 2014
|
||||||
*
|
*
|
||||||
* Since the PNG Development group is an ad-hoc body, we can't make
|
* 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.6.15 are Y2K compliant. It is my belief that
|
* upward through 1.6.16 are Y2K compliant. It is my belief that
|
||||||
* earlier versions were also Y2K compliant.
|
* earlier versions were also Y2K compliant.
|
||||||
*
|
*
|
||||||
* Libpng only has two year fields. One is a 2-byte unsigned integer
|
* Libpng only has two year fields. One is a 2-byte unsigned integer
|
||||||
|
@ -420,9 +423,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.6.15"
|
#define PNG_LIBPNG_VER_STRING "1.6.16"
|
||||||
#define PNG_HEADER_VERSION_STRING \
|
#define PNG_HEADER_VERSION_STRING \
|
||||||
" libpng version 1.6.15 - November 20, 2014\n"
|
" libpng version 1.6.16 - December 22, 2014\n"
|
||||||
|
|
||||||
#define PNG_LIBPNG_VER_SONUM 16
|
#define PNG_LIBPNG_VER_SONUM 16
|
||||||
#define PNG_LIBPNG_VER_DLLNUM 16
|
#define PNG_LIBPNG_VER_DLLNUM 16
|
||||||
|
@ -430,7 +433,7 @@
|
||||||
/* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */
|
/* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */
|
||||||
#define PNG_LIBPNG_VER_MAJOR 1
|
#define PNG_LIBPNG_VER_MAJOR 1
|
||||||
#define PNG_LIBPNG_VER_MINOR 6
|
#define PNG_LIBPNG_VER_MINOR 6
|
||||||
#define PNG_LIBPNG_VER_RELEASE 15
|
#define PNG_LIBPNG_VER_RELEASE 16
|
||||||
|
|
||||||
/* This should match the numeric part of the final component of
|
/* This should match the numeric part of the final component of
|
||||||
* PNG_LIBPNG_VER_STRING, omitting any leading zero:
|
* PNG_LIBPNG_VER_STRING, omitting any leading zero:
|
||||||
|
@ -461,7 +464,7 @@
|
||||||
* version 1.0.0 was mis-numbered 100 instead of 10000). From
|
* version 1.0.0 was mis-numbered 100 instead of 10000). From
|
||||||
* version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release
|
* version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release
|
||||||
*/
|
*/
|
||||||
#define PNG_LIBPNG_VER 10615 /* 1.6.15 */
|
#define PNG_LIBPNG_VER 10616 /* 1.6.16 */
|
||||||
|
|
||||||
/* Library configuration: these options cannot be changed after
|
/* Library configuration: these options cannot be changed after
|
||||||
* the library has been built.
|
* the library has been built.
|
||||||
|
@ -566,7 +569,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_6_15;
|
typedef char* png_libpng_version_1_6_16;
|
||||||
|
|
||||||
/* Basic control structions. Read libpng-manual.txt or libpng.3 for more info.
|
/* Basic control structions. Read libpng-manual.txt or libpng.3 for more info.
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
/* pngconf.h - machine configurable file for libpng
|
/* pngconf.h - machine configurable file for libpng
|
||||||
*
|
*
|
||||||
* libpng version 1.6.15,November 20, 2014
|
* libpng version 1.6.16,December 22, 2014
|
||||||
*
|
*
|
||||||
* Copyright (c) 1998-2014 Glenn Randers-Pehrson
|
* Copyright (c) 1998-2014 Glenn Randers-Pehrson
|
||||||
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
|
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
|
||||||
|
|
|
@ -788,6 +788,7 @@ png_inflate_read(png_structrp png_ptr, png_bytep read_buffer, uInt read_size,
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Read and check the IDHR chunk */
|
/* Read and check the IDHR chunk */
|
||||||
|
|
||||||
void /* PRIVATE */
|
void /* PRIVATE */
|
||||||
png_handle_IHDR(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length)
|
png_handle_IHDR(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length)
|
||||||
{
|
{
|
||||||
|
@ -852,8 +853,7 @@ png_handle_IHDR(png_structrp png_ptr, png_inforp info_ptr, png_uint_32 length)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set up other useful info */
|
/* Set up other useful info */
|
||||||
png_ptr->pixel_depth = (png_byte)(png_ptr->bit_depth *
|
png_ptr->pixel_depth = (png_byte)(png_ptr->bit_depth * png_ptr->channels);
|
||||||
png_ptr->channels);
|
|
||||||
png_ptr->rowbytes = PNG_ROWBYTES(png_ptr->pixel_depth, png_ptr->width);
|
png_ptr->rowbytes = PNG_ROWBYTES(png_ptr->pixel_depth, png_ptr->width);
|
||||||
png_debug1(3, "bit_depth = %d", png_ptr->bit_depth);
|
png_debug1(3, "bit_depth = %d", png_ptr->bit_depth);
|
||||||
png_debug1(3, "channels = %d", png_ptr->channels);
|
png_debug1(3, "channels = %d", png_ptr->channels);
|
||||||
|
@ -3003,7 +3003,7 @@ png_combine_row(png_const_structrp png_ptr, png_bytep dp, int display)
|
||||||
{
|
{
|
||||||
unsigned int pixel_depth = png_ptr->transformed_pixel_depth;
|
unsigned int pixel_depth = png_ptr->transformed_pixel_depth;
|
||||||
png_const_bytep sp = png_ptr->row_buf + 1;
|
png_const_bytep sp = png_ptr->row_buf + 1;
|
||||||
png_uint_32 row_width = png_ptr->width;
|
png_alloc_size_t row_width = png_ptr->width;
|
||||||
unsigned int pass = png_ptr->pass;
|
unsigned int pass = png_ptr->pass;
|
||||||
png_bytep end_ptr = 0;
|
png_bytep end_ptr = 0;
|
||||||
png_byte end_byte = 0;
|
png_byte end_byte = 0;
|
||||||
|
@ -3278,7 +3278,7 @@ png_combine_row(png_const_structrp png_ptr, png_bytep dp, int display)
|
||||||
|
|
||||||
/* But don't allow this number to exceed the actual row width. */
|
/* But don't allow this number to exceed the actual row width. */
|
||||||
if (bytes_to_copy > row_width)
|
if (bytes_to_copy > row_width)
|
||||||
bytes_to_copy = row_width;
|
bytes_to_copy = (unsigned int)/*SAFE*/row_width;
|
||||||
}
|
}
|
||||||
|
|
||||||
else /* normal row; Adam7 only ever gives us one pixel to copy. */
|
else /* normal row; Adam7 only ever gives us one pixel to copy. */
|
||||||
|
@ -3458,7 +3458,7 @@ png_combine_row(png_const_structrp png_ptr, png_bytep dp, int display)
|
||||||
dp += bytes_to_jump;
|
dp += bytes_to_jump;
|
||||||
row_width -= bytes_to_jump;
|
row_width -= bytes_to_jump;
|
||||||
if (bytes_to_copy > row_width)
|
if (bytes_to_copy > row_width)
|
||||||
bytes_to_copy = row_width;
|
bytes_to_copy = (unsigned int)/*SAFE*/row_width;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4228,7 +4228,7 @@ png_read_start_row(png_structrp png_ptr)
|
||||||
|
|
||||||
max_pixel_depth = png_ptr->pixel_depth;
|
max_pixel_depth = png_ptr->pixel_depth;
|
||||||
|
|
||||||
/* WARNING: * png_read_transform_info (pngrtran.c) performs a simpliar set of
|
/* WARNING: * png_read_transform_info (pngrtran.c) performs a simpler set of
|
||||||
* calculations to calculate the final pixel depth, then
|
* calculations to calculate the final pixel depth, then
|
||||||
* png_do_read_transforms actually does the transforms. This means that the
|
* png_do_read_transforms actually does the transforms. This means that the
|
||||||
* code which effectively calculates this value is actually repeated in three
|
* code which effectively calculates this value is actually repeated in three
|
||||||
|
|
Loading…
Reference in New Issue