[libpng16] Issue a png_benign_error instead of a png_error on ADLER32 mismatch
while decoding compressed data chunks.
This commit is contained in:
parent
bc2bb96cd7
commit
1842d7c865
4
ANNOUNCE
4
ANNOUNCE
@ -30,7 +30,9 @@ Version 1.6.26beta01 [September 12, 2016]
|
|||||||
bugfix by John Bowler).
|
bugfix by John Bowler).
|
||||||
Do not issue a png_error() on read in png_set_pCAL() because png_handle_pCAL
|
Do not issue a png_error() on read in png_set_pCAL() because png_handle_pCAL
|
||||||
has allocated memory that libpng needs to free.
|
has allocated memory that libpng needs to free.
|
||||||
Conditionally compile png_set_benign_errors() in pngread.c
|
Conditionally compile png_set_benign_errors() in pngread.c and pngtest.c
|
||||||
|
Issue a png_benign_error instead of a png_error on ADLER32 mismatch
|
||||||
|
while decoding compressed data chunks.
|
||||||
|
|
||||||
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
|
||||||
|
4
CHANGES
4
CHANGES
@ -5708,7 +5708,9 @@ Version 1.6.26beta01 [September 12, 2016]
|
|||||||
bugfix by John Bowler).
|
bugfix by John Bowler).
|
||||||
Do not issue a png_error() on read in png_set_pCAL() because png_handle_pCAL
|
Do not issue a png_error() on read in png_set_pCAL() because png_handle_pCAL
|
||||||
has allocated memory that libpng needs to free.
|
has allocated memory that libpng needs to free.
|
||||||
Conditionally compile png_set_benign_errors() in pngread.c
|
Conditionally compile png_set_benign_errors() in pngread.c and pngtest.c
|
||||||
|
Issue a png_benign_error instead of a png_error on ADLER32 mismatch
|
||||||
|
while decoding compressed data chunks.
|
||||||
|
|
||||||
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
|
||||||
|
@ -683,8 +683,13 @@ png_process_IDAT_data(png_structrp png_ptr, png_bytep buffer,
|
|||||||
png_ptr->pass > 6)
|
png_ptr->pass > 6)
|
||||||
png_warning(png_ptr, "Truncated compressed data in IDAT");
|
png_warning(png_ptr, "Truncated compressed data in IDAT");
|
||||||
|
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (ret == Z_DATA_ERROR)
|
||||||
|
png_benign_error(png_ptr, "ADLER32 checksum mismatch in IDAT");
|
||||||
else
|
else
|
||||||
png_error(png_ptr, "Decompression error in IDAT");
|
png_error(png_ptr, "Decompression error in IDAT");
|
||||||
|
}
|
||||||
|
|
||||||
/* Skip the check on unprocessed input */
|
/* Skip the check on unprocessed input */
|
||||||
return;
|
return;
|
||||||
|
@ -4101,7 +4101,12 @@ png_read_IDAT_data(png_structrp png_ptr, png_bytep output,
|
|||||||
png_zstream_error(png_ptr, ret);
|
png_zstream_error(png_ptr, ret);
|
||||||
|
|
||||||
if (output != NULL)
|
if (output != NULL)
|
||||||
|
{
|
||||||
|
if(!strncmp(png_ptr->zstream.msg,"incorrect data check",20))
|
||||||
|
png_chunk_benign_error(png_ptr, png_ptr->zstream.msg);
|
||||||
|
else
|
||||||
png_chunk_error(png_ptr, png_ptr->zstream.msg);
|
png_chunk_error(png_ptr, png_ptr->zstream.msg);
|
||||||
|
}
|
||||||
|
|
||||||
else /* checking */
|
else /* checking */
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user