mirror of
https://git.code.sf.net/p/libpng/code.git
synced 2025-07-10 18:04:09 +02:00
[devel] Revised png_check_IHDR()
to eliminate bogus complaint about filter_type.
This commit is contained in:
parent
6564abbf26
commit
7ec330ddeb
5
ANNOUNCE
5
ANNOUNCE
@ -558,11 +558,14 @@ version 1.4.0beta81 [September 23, 2009]
|
|||||||
Changed all "#if [!]defined(X)" to "if[n]def X" where possible.
|
Changed all "#if [!]defined(X)" to "if[n]def X" where possible.
|
||||||
Eliminated unused png_ptr->row_buf_size
|
Eliminated unused png_ptr->row_buf_size
|
||||||
|
|
||||||
version 1.4.0beta82 [September 25, 2009]
|
version 1.4.0beta82 [September 24, 2009]
|
||||||
Moved redundant IHDR checking into new png_check_IHDR() in png.c
|
Moved redundant IHDR checking into new png_check_IHDR() in png.c
|
||||||
and report all errors found in the IHDR data.
|
and report all errors found in the IHDR data.
|
||||||
Eliminated useless call to png_check_cHRM() from pngset.c
|
Eliminated useless call to png_check_cHRM() from pngset.c
|
||||||
|
|
||||||
|
version 1.4.0beta83 [September 25, 2009]
|
||||||
|
Revised png_check_IHDR() to eliminate bogus complaint about filter_type.
|
||||||
|
|
||||||
version 1.4.0betaN [future]
|
version 1.4.0betaN [future]
|
||||||
Build shared libraries with -lz and sometimes -lm.
|
Build shared libraries with -lz and sometimes -lm.
|
||||||
|
|
||||||
|
5
CHANGES
5
CHANGES
@ -2244,11 +2244,14 @@ version 1.4.0beta81 [September 23, 2009]
|
|||||||
Changed all "#if [!]defined(X)" to "if[n]def X" where possible.
|
Changed all "#if [!]defined(X)" to "if[n]def X" where possible.
|
||||||
Eliminated unused png_ptr->row_buf_size
|
Eliminated unused png_ptr->row_buf_size
|
||||||
|
|
||||||
version 1.4.0beta82 [September 25, 2009]
|
version 1.4.0beta82 [September 24, 2009]
|
||||||
Moved redundant IHDR checking into new png_check_IHDR() in png.c
|
Moved redundant IHDR checking into new png_check_IHDR() in png.c
|
||||||
and report all errors found in the IHDR data.
|
and report all errors found in the IHDR data.
|
||||||
Eliminated useless call to png_check_cHRM() from pngset.c
|
Eliminated useless call to png_check_cHRM() from pngset.c
|
||||||
|
|
||||||
|
version 1.4.0beta83 [September 25, 2009]
|
||||||
|
Revised png_check_IHDR() to eliminate bogus complaint about filter_type.
|
||||||
|
|
||||||
version 1.4.0betaN [future]
|
version 1.4.0betaN [future]
|
||||||
Build shared libraries with -lz and sometimes -lm.
|
Build shared libraries with -lz and sometimes -lm.
|
||||||
|
|
||||||
|
9
png.c
9
png.c
@ -889,15 +889,20 @@ png_check_IHDR(png_structp png_ptr,
|
|||||||
{
|
{
|
||||||
if (!((png_ptr->mng_features_permitted & PNG_FLAG_MNG_FILTER_64) &&
|
if (!((png_ptr->mng_features_permitted & PNG_FLAG_MNG_FILTER_64) &&
|
||||||
(filter_type == PNG_INTRAPIXEL_DIFFERENCING) &&
|
(filter_type == PNG_INTRAPIXEL_DIFFERENCING) &&
|
||||||
((png_ptr->mode&PNG_HAVE_PNG_SIGNATURE) == 0) &&
|
((png_ptr->mode & PNG_HAVE_PNG_SIGNATURE) == 0) &&
|
||||||
(color_type == PNG_COLOR_TYPE_RGB ||
|
(color_type == PNG_COLOR_TYPE_RGB ||
|
||||||
color_type == PNG_COLOR_TYPE_RGB_ALPHA)))
|
color_type == PNG_COLOR_TYPE_RGB_ALPHA)))
|
||||||
|
{
|
||||||
png_warning(png_ptr, "Unknown filter method in IHDR");
|
png_warning(png_ptr, "Unknown filter method in IHDR");
|
||||||
error = 1;
|
error = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (png_ptr->mode&PNG_HAVE_PNG_SIGNATURE)
|
if (png_ptr->mode & PNG_HAVE_PNG_SIGNATURE)
|
||||||
|
{
|
||||||
png_warning(png_ptr, "Invalid filter method in IHDR");
|
png_warning(png_ptr, "Invalid filter method in IHDR");
|
||||||
|
error = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
if (filter_type != PNG_FILTER_TYPE_BASE)
|
if (filter_type != PNG_FILTER_TYPE_BASE)
|
||||||
|
16
pngpriv.h
16
pngpriv.h
@ -817,20 +817,20 @@ PNG_EXTERN int png_check_cHRM_fixed PNGARG((png_structp png_ptr,
|
|||||||
png_fixed_point int_blue_y));
|
png_fixed_point int_blue_y));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef PNG_cHRM_SUPPORTED
|
||||||
|
#ifdef PNG_CHECK_cHRM_SUPPORTED
|
||||||
|
/* Added at libpng version 1.2.34 and 1.4.0 */
|
||||||
|
PNG_EXTERN void png_64bit_product PNGARG((long v1, long v2,
|
||||||
|
unsigned long *hi_product, unsigned long *lo_product));
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Added at libpng version 1.4.0 */
|
/* Added at libpng version 1.4.0 */
|
||||||
PNG_EXTERN void png_check_IHDR PNGARG((png_structp png_ptr,
|
PNG_EXTERN void png_check_IHDR PNGARG((png_structp png_ptr,
|
||||||
png_uint_32 width, png_uint_32 height, int bit_depth,
|
png_uint_32 width, png_uint_32 height, int bit_depth,
|
||||||
int color_type, int interlace_type, int compression_type,
|
int color_type, int interlace_type, int compression_type,
|
||||||
int filter_type));
|
int filter_type));
|
||||||
|
|
||||||
#ifdef PNG_cHRM_SUPPORTED
|
|
||||||
#ifdef PNG_CHECK_cHRM_SUPPORTED
|
|
||||||
/* Added at libpng version 1.2.34 and 1.4.0 */
|
|
||||||
PNG_EXTERN void png_64bit_product (long v1, long v2, unsigned long *hi_product,
|
|
||||||
unsigned long *lo_product);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Maintainer: Put new private prototypes here ^ and in libpngpf.3 */
|
/* Maintainer: Put new private prototypes here ^ and in libpngpf.3 */
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
Loading…
x
Reference in New Issue
Block a user