[libpng16] test: Add a compile-time check in pngimage.c to avoid a failure

Disable the check on `interlace_method` inside function `compare_read`
in pngimage.c, if WRITE_INTERLACING is not supported.

If interlaced encoding is disabled inside libpng, the encoded images
are non-interlaced silently and unconditionally.  This commit updates
the image comparison to skip the interlace check in the resultant
image; other behavior is still checked.

This is a cherry-pick of commit d9f13d8d846e08b00f6530b7a5fe07039d48c78d
from branch 'libpng18'.

Reviewed-by: Cosmin Truta <ctruta@gmail.com>
Signed-off-by: John Bowler <jbowler@acm.org>
Signed-off-by: Cosmin Truta <ctruta@gmail.com>
This commit is contained in:
John Bowler 2024-10-14 12:26:22 -07:00 committed by Cosmin Truta
parent 65470ac86c
commit 76e5ec217f

View File

@ -1018,7 +1018,12 @@ compare_read(struct display *dp, int applied_transforms)
C(height); C(height);
C(bit_depth); C(bit_depth);
C(color_type); C(color_type);
C(interlace_method); # ifdef PNG_WRITE_INTERLACING_SUPPORTED
/* If write interlace has been disabled, the PNG file is still
* written correctly, but as a regular (not-interlaced) PNG.
*/
C(interlace_method);
# endif
C(compression_method); C(compression_method);
C(filter_method); C(filter_method);