Re: BUG: Converting GIF to PNG fails with SIGSEGV

Bob Friesenhahn <[email protected]> Thu, 17 Jul 2008 14:26:16 -0500 (CDT)
Newsgroups gmane.comp.video.graphicsmagick.bugs
Message-ID <[email protected]>
On Thu, 17 Jul 2008, Jan Kandziora wrote:
>
> I think I found another bug in GraphicsMagick. I tried 1.2.3 first, then
> latest CVS.
>
> $ strace gm convert pixel_black.gif a.png

The good news is that I am able to reproduce this bug.

t@1 (l@1) program terminated by signal SEGV (no mapping at the fault address)
Current function is WriteOnePNGImage
  6434                 ping_info->trans_values.red=ScaleQuantumToShort(p->red)&mask;
(dbx) where
current thread: t@1
=>[1] WriteOnePNGImage(mng_info = 0x84a3008, image_info = 0x845d008, image = 0x8454008), line 6434 in "png.c"
   [2] WritePNGImage(image_info = 0x845d008, image = 0x8454008), line 7383 in "png.c"
   [3] WriteImage(image_info = 0x8451008, image = 0x8454008), line 6565 in "constitute.c"
   [4] WriteImages(image_info = 0x843d008, image = 0x8454008, filename = 0x8445048 "a.png", exception = 0x80464e4), line 6683 in "constitute.c"
   [5] ConvertImageCommand(image_info = 0x843d008, argc = 3, argv = 0x8442008, metadata = (nil), exception = 0x80464e4), line 4597 in "command.c"
   [6] MagickCommand(image_info = 0x843d008, argc = 3, argv = 0x8046d5c, metadata = 0x8046504, exception = 0x80464e4), line 7106 in "command.c"
   [7] GMCommand(argc = 3, argv = 0x8046d5c), line 14180 in "command.c"
   [8] main(argc = 4, argv = 0x8046d58), line 61 in "gm.c"
(dbx) print p
p = (nil)

Looking at the code, it seems that this bug must be my fault and was 
added in 1.2.X.

Bob
======================================
Bob Friesenhahn
[email protected], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/