[Magick-bugs] Low priority bug in coders/palm.c

1tms at gmx.de 1tms at gmx.de
Sun Dec 2 22:11:28 PST 2007


Dear ImageMagick Team!

This effect appeared in ImageMagick 6.3.7-2 on i686 Debian Linux/2.6.22-14.

I tried to create 4-greylevel images for a PALM handheld and encountered three problems.
This is the first:

$ wget http://www.imagemagick.org/image/logo.jpg

$ convert logo.jpg -colorspace gray logo.gif

$ gdb convert

(gdb) run logo.gif -normalize -ordered-dither threshold,4 logo.palm

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1216514384 (LWP 24161)]
0xb77d457d in WritePALMImage (image_info=0x806a890, image=0x8062c88) at coders/palm.c:852
852                   color=(unsigned char) (indexes[x]*((1 << bits_per_pixel)-1)/

(gbd) print indexes
$1 = (IndexPacket *) 0x1

(gdb) print *image
$2 = {storage_class = DirectClass, colorspace = GRAYColorspace, ...

As far as I understand, magick/cache.c:GetIndexes() requires an image in CYMK or PseudoColor.
The dithered image is in DirectColor, so GetIndexes() should return NULL (why is it 1?).
I'm not familiar with the ImageMagick code. There's probably an easy way to force an image
into PseudoColor for WritePALMImage() to work.

The problem can be worked around in the command line by adding '-colors 4'. Nevertheless
'convert' shouldn't segfault...

Best,

Thomas.


More information about the Magick-bugs mailing list