Subject: | libpng 1.6.10 CRC "benign error" behavior change results in failing test |
I have libpng 1.6.10 installed on OS X via MacPorts and Perl 5.18.1 installed via Perlbrew. Installing Imager-0.98 or a fresh git checkout of Imager results in an error during `make test`:
~~~~~
PERL_DL_NONLAZY=1 /Users/brian/perl5/perlbrew/perls/perl-5.18.1/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, '../blib/lib', '../blib/arch')" t/*.t
t/00load.t .. ok
t/10png.t ... 1/249 # Library version 10610
# Failed test 'read bad crc with png_ignore_benign_errors'
# at t/10png.t line 188.
# Looks like you failed 1 test of 249.
t/10png.t ... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/249 subtests
Test Summary Report
-------------------
t/10png.t (Wstat: 256 Tests: 249 Failed: 1)
Failed test: 39
Non-zero exit status: 1
Files=2, Tests=250, 0 wallclock secs ( 0.05 usr 0.01 sys + 0.56 cusr 0.14 csys = 0.76 CPU)
Result: FAIL
Failed 1/2 test programs. 1/250 subtests failed.
~~~~~
The libpng home page <http://www.libpng.org/pub/png/libpng.html> specifically mentions change in the treatment of CRC as benign errors: "libpng 1.6.10 ... also fixes a bug in which libpng would read invalid sBIT chunks and another in which CRC errors were treated as benign."
Skipping this test and bumping the version number to satisfy xt/x90cmpversion.t resulted in all tests passing. I would add a patch, but I'm not sure what the desired test would be given libpng's change in behavior.