FS#27644 - [imagemagick] segfault in Magick::coderInfoList with converseen if libwmf is not installed

Attached to Project: Community Packages
Opened by Benoit ebner (gatchan) - Tuesday, 20 December 2011, 19:27 GMT
Last edited by Giovanni Scafora (giovanni) - Friday, 30 December 2011, 00:14 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Eric Belanger (Snowman)
Giovanni Scafora (giovanni)
Architecture x86_64
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

I install converseen. When I launch it, I have this error:
╭─benoit@benoit-hp ~
╰─➤ converseen
terminate called after throwing an instance of 'Magick::ErrorModule'
what(): Magick: unable to load module `/usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.la': file not found @ error/module.c/OpenModule/1278
[1] 5830 abort converseen

I search for the load module. I found it:
╭─benoit@benoit-hp ~
╰─➤ ls /usr/lib/ImageMagick-6.7.4/modules-Q16/coders 134 ↵
aai.la caption.so debug.la fax.so hrz.la jpeg.so miff.la mvg.so pdb.la pnm.so rgb.la stegano.so ttf.la viff.so xpm.so
aai.so cin.la debug.so fits.la hrz.so label.la miff.so null.la pdb.so preview.la rgb.so sun.la ttf.so wbmp.la xps.la
art.la cin.so dib.la fits.so html.la label.so mono.la null.so pdf.la preview.so rla.la sun.so txt.la wbmp.so xps.so
art.so cip.la dib.so gif.la html.so mac.la mono.so otb.la pdf.so ps2.la rla.so svg.la txt.so wmf.la x.so
avs.la cip.so dng.la gif.so icon.la mac.so mpc.la otb.so pes.la ps2.so rle.la svg.so uil.la wmf.so xwd.la
avs.so clip.la dng.so gradient.la icon.so magick.la mpc.so palm.la pes.so ps3.la rle.so tga.la uil.so wpg.la xwd.so
bgr.la clip.so dot.la gradient.so info.la magick.so mpeg.la palm.so pict.la ps3.so scr.la tga.so url.la wpg.so ycbcr.la
bgr.so cmyk.la dot.so gray.la info.so map.la mpeg.so pattern.la pict.so psd.la scr.so thumbnail.la url.so xbm.la ycbcr.so
bmp.la cmyk.so dpx.la gray.so inline.la map.so mpr.la pattern.so pix.la psd.so sct.la thumbnail.so uyvy.la xbm.so yuv.la
bmp.so cut.la dpx.so hald.la inline.so mat.la mpr.so pcd.la pix.so ps.la sct.so tiff.la uyvy.so xcf.la yuv.so
braille.la cut.so ept.la hald.so ipl.la mat.so msl.la pcd.so plasma.la ps.so sfw.la tiff.so vicar.la xcf.so
braille.so dcm.la ept.so hdr.la ipl.so matte.la msl.so pcl.la plasma.so pwp.la sfw.so tile.la vicar.so xc.la
cals.la dcm.so exr.la hdr.so jp2.la matte.so mtv.la pcl.so png.la pwp.so sgi.la tile.so vid.la xc.so
cals.so dds.la exr.so histogram.la jp2.so meta.la mtv.so pcx.la png.so raw.la sgi.so tim.la vid.so x.la
caption.la dds.so fax.la histogram.so jpeg.la meta.so mvg.la pcx.so pnm.la raw.so stegano.la tim.so viff.la xpm.la


Additional info:
version 0.4.7

Steps to reproduce:
Install converseen (pacman -S converseen)
type converseen in a terminal
This task depends upon

Closed by  Giovanni Scafora (giovanni)
Friday, 30 December 2011, 00:14 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed in converseen-0.4.7-2
Comment by Alexander F. Rødseth (xyproto) - Wednesday, 21 December 2011, 09:49 GMT
Unable to reproduce. Here converseen starts up just fine. x86_64.

imagemagick 6.7.4.0-1
converseen 0.4.7-1

I also notice that /usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.la is owned by imagemagick 6.7.4.0-1, and that it exists here on my system.
Does it exist on yours?

Please try reinstalling imagemagick and doublecheck that you have enough disk space on all relevant partitions.
Also, please make sure all packages are up to date.
Comment by Benoit ebner (gatchan) - Wednesday, 21 December 2011, 10:37 GMT
I reinstall imagemagick and converseen and my system is fully up-to-date.
Here is my version:

sudo pacman -Qs imagemagick
local/imagemagick 6.7.4.0-1
An image viewing/manipulation program

sudo pacman -Qs converseen
local/converseen 0.4.7-1
The batch image converter and resizer

I have the file that cause the problem:
ls -l /usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.*
-rwxr-xr-x 1 root root 1151 13 déc 18:40 /usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.la
-rwxr-xr-x 1 root root 10400 13 déc 18:40 /usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.so

And the free space is good:
df -h
Sys. fich. Taille Util. Dispo Uti% Monté sur
rootfs 29G 8,5G 19G 31% /
udev 10M 0 10M 0% /dev
/run 10M 468K 9,6M 5% /run
/dev/sda2 29G 8,5G 19G 31% /
shm 1,9G 240K 1,9G 1% /dev/shm
tmpfs 1,9G 40K 1,9G 1% /tmp
/dev/sda6 139G 78G 55G 59% /home
Comment by Alexander F. Rødseth (xyproto) - Wednesday, 21 December 2011, 12:45 GMT
Do you have the same md5 sum?

md5sum /usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.la
9a9f217162f5596eed1d0984c7274cfc /usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.la

Perhaps a dependency is missing from the package?

Weirdness.
Comment by Benoit ebner (gatchan) - Wednesday, 21 December 2011, 12:54 GMT
Yes, it's the same:
md5sum /usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.la
9a9f217162f5596eed1d0984c7274cfc /usr/lib/ImageMagick-6.7.4/modules-Q16/coders/wmf.la
Comment by Benoit ebner (gatchan) - Wednesday, 21 December 2011, 13:30 GMT
I don't think the bug came from converseen it self. I download the source file and make it on my computer. The result is the same.
Comment by Eric Belanger (Snowman) - Wednesday, 21 December 2011, 16:18 GMT
converseen starts fine here.
Comment by Giovanni Scafora (giovanni) - Wednesday, 21 December 2011, 16:36 GMT
I cannot reproduce it.
converseen starts fine here.
Comment by Alexander F. Rødseth (xyproto) - Wednesday, 21 December 2011, 21:09 GMT
Have you tried reinstalling qt? (the other dependency, other than imagemagick, for converseen).

Could you please post the output from the following command on one of the pastebin sites out there?

strace -o /dev/stdout converseen | grep open

This could also be nice to see:
gdb converseen
r
(wait for segfault)
bt full
Comment by Benoit ebner (gatchan) - Friday, 23 December 2011, 08:15 GMT
The strace export: http://pastebin.com/U5c0KvEw
and the gdb export: http://pastebin.com/wukcnpTA
Comment by Alexander F. Rødseth (xyproto) - Friday, 23 December 2011, 09:08 GMT
Thank you.

I see this from the strace output:
open("/usr/lib/libwmf-0.2.so.7", O_RDONLY) = -1 ENOENT (No such file or directory)

On my system, the output from strace looks like this:
open("/usr/lib/libwmf-0.2.so.7", O_RDONLY) = 7

Furthermore, /usr/lib/libwmf-0.2.so.7 is owned by the libwmf package.

Do you have libwmf installed? If installing it solves the problem, I believe libwmf should be added as a dependency for imagemagick, instead of an optional dependency.
Comment by Benoit ebner (gatchan) - Friday, 23 December 2011, 10:25 GMT
Yes, that solve the problem!

Thanks for this quick help!
Comment by Eric Belanger (Snowman) - Thursday, 29 December 2011, 22:37 GMT
If converseen doesn't start if libwmf isn't installed, then converseen should depend on libwmf.

Loading...