diff options
author | Glenn Randers-Pehrson <glennrp at users.sourceforge.net> | 2016-09-11 22:02:05 -0500 |
---|---|---|
committer | Glenn Randers-Pehrson <glennrp at users.sourceforge.net> | 2016-09-11 22:02:05 -0500 |
commit | 1842d7c86574e5ac6494423a5e3205c3fedd74b4 (patch) | |
tree | 568bdc25b6b5d05b325aed1a65a64eb28272adb3 /pngpread.c | |
parent | bc2bb96cd76c1c54a9de54de3b0ce5c832bd67e3 (diff) | |
download | libpng-1842d7c86574e5ac6494423a5e3205c3fedd74b4.tar.gz |
[libpng16] Issue a png_benign_error instead of a png_error on ADLER32 mismatch
while decoding compressed data chunks.
Diffstat (limited to 'pngpread.c')
-rw-r--r-- | pngpread.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/pngpread.c b/pngpread.c index 794352f42..c3637b5f0 100644 --- a/pngpread.c +++ b/pngpread.c @@ -684,7 +684,12 @@ png_process_IDAT_data(png_structrp png_ptr, png_bytep buffer, png_warning(png_ptr, "Truncated compressed data in IDAT"); else - png_error(png_ptr, "Decompression error in IDAT"); + { + if (ret == Z_DATA_ERROR) + png_benign_error(png_ptr, "ADLER32 checksum mismatch in IDAT"); + else + png_error(png_ptr, "Decompression error in IDAT"); + } /* Skip the check on unprocessed input */ return; |