Bug 1487209

Summary: perl-Graphics-TIFF-6-1.fc27 FTBFS: MagickCore/exception.c:1034: ThrowMagickExceptionList: Assertion `exception->signature == MagickCoreSignature' failed
Product: [Fedora] Fedora Reporter: Petr Pisar <ppisar>
Component: perl-Graphics-TIFFAssignee: Petr Pisar <ppisar>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 27CC: jplesnik, perl-devel, ppisar
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://apps.fedoraproject.org/koschei/build/3280353
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-11-28 09:38:15 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Petr Pisar 2017-08-31 12:41:24 UTC
perl-Graphics-TIFF-6-1.fc27 fails to build in F27 because a test crashes:

"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- TIFF.bs blib/arch/auto/Graphics/TIFF/TIFF.bs 644
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
perl: MagickCore/exception.c:1034: ThrowMagickExceptionList: Assertion `exception->signature == MagickCoreSignature' failed.
t/1.t ............ 
Failed 35/43 subtests 
t/2.t ............ ok
t/8_enums.t ...... ok
t/90_MANIFEST.t .. ok
t/91_critic.t .... skipped: Author test.  Set $ENV{TEST_AUTHOR} to a true value to run.
t/92_tiffinfo.t .. ok
t/93_tiff2pdf.t .. ok
Test Summary Report
-------------------
t/1.t          (Wstat: 134 Tests: 8 Failed: 0)
  Non-zero wait status: 134
  Parse errors: Bad plan.  You planned 43 tests but ran 8.

A difference between working and failing build root is:

        ImageMagick-perl 	6.9.9.3-3.fc27 	> 	7.0.6.9-4.fc27
	ImageMagick-libs 	6.9.9.3-3.fc27 	> 	7.0.6.9-4.fc27
	krb5-libs 	1.15.1-22.fc27 	> 	1.15.1-25.fc27
	sqlite-libs 	3.20.0-1.fc27 	> 	3.20.0-2.fc27
	gdb-headless 	8.0-23.fc27 	> 	8.0-24.fc27

Comment 1 Petr Pisar 2017-08-31 13:19:49 UTC
The failure is:

$ perl -Iblib/{lib,arch} t/1.t 
1..43
ok 1 - use Graphics::TIFF;
ok 2 - version string
ok 3 - version
ok 4 - IsCODECConfigured
ok 5 - FileName
ok 6 - An object of class 'Graphics::TIFF' isa 'Graphics::TIFF'
ok 7 - Graphics::TIFF->can(...)
ok 8 - ReadDirectory
perl: MagickCore/exception.c:1034: ThrowMagickExceptionList: Assertion `exception->signature == MagickCoreSignature' failed.
Aborted (core dumped)

It crashes in ReadEXIFDirectory() method call:

SKIP: {
    skip 'Image::Magick not installed', 36 if $@;

    my $image = Image::Magick->new;
    $image->Read('rose:');
    $image->Set( density => '72x72' );
    $image->Write('test.tif');

    my $tif = Graphics::TIFF->Open( 'test.tif', 'r' );
    is( $tif->FileName, 'test.tif', 'FileName' );
    isa_ok $tif, 'Graphics::TIFF';
    can_ok $tif, qw(Close ReadDirectory GetField);

    is( $tif->ReadDirectory, 0, 'ReadDirectory' );

→   is( $tif->ReadEXIFDirectory(0), 0, 'ReadEXIFDirectory' );
    [...]
}

The assert comes from ImageMagick-perl package, but the ReadEXIFDirectory() method is a binding to LibTFF's TIFFReadEXIFDirectory() function.

Comment 2 Petr Pisar 2017-11-10 09:54:03 UTC
Fedora reverted ImageMagick to 6.9. This will be issue in the future.

Comment 3 Ben Cotton 2018-11-27 18:16:14 UTC
This message is a reminder that Fedora 27 is nearing its end of life.
On 2018-Nov-30  Fedora will stop maintaining and issuing updates for
Fedora 27. It is Fedora's policy to close all bug reports from releases
that are no longer maintained. At that time this bug will be closed as
EOL if it remains open with a Fedora  'version' of '27'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 27 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 4 Petr Pisar 2018-11-28 09:38:15 UTC
Fedora still has ImageMagick 6.9. No issue there.