[Pkg-gmagick-im-team] Bug#989004: imagemagick-6.q16: Display terminates after ~ 3 seconds

Bernhard Übelacker bernhardu at mailbox.org
Sun Jun 13 21:23:51 BST 2021


Hello Helge,
I just tried to collect some information for the Maintainer.

Might this be the expected behaviour?


This image seems to have a stored Delay and Duration value:

$ identify -verbose 2006_08262.gif
Image:
   Filename: 2006_08262.gif
...
   Delay: 20x100
   Duration: 20
...



These 20 get get read here:
(rr) bt
#0  0x00007fcdf0974404 in ReadGIFImage (image_info=<optimized out>, exception=<optimized out>) at ../../coders/gif.c:1098
#1  0x00007fcdf0717c20 in ReadImage (image_info=image_info at entry=0x558dfa3c9680, exception=exception at entry=0x558dfa3c4c10) at ../../magick/constitute.c:563
#2  0x00007fcdf05ce223 in DisplayImageCommand (image_info=0x558dfa3c9680, image_info at entry=0x558dfa3c54e0, argc=<optimized out>, argc at entry=2, argv=<optimized out>, argv at entry=0x7fff189926b8, wand_unused_metadata=wand_unused_metadata at entry=0x0, exception=exception at entry=0x558dfa3c4c10) at ../../wand/display.c:492
#3  0x00007fcdf0616f80 in MagickCommandGenesis (image_info=image_info at entry=0x558dfa3c54e0, command=0x7fcdf05cd5b0 <DisplayImageCommand>, argc=argc at entry=2, argv=argv at entry=0x7fff189926b8, metadata=metadata at entry=0x0, exception=exception at entry=0x558dfa3c4c10) at ../../wand/mogrify.c:173
#4  0x0000558df995d0fa in DisplayMain (argv=0x7fff189926b8, argc=2) at ../../utilities/display.c:89
#5  main (argc=2, argv=0x7fff189926b8) at ../../utilities/display.c:100



And get interpreted here, resulting in a delay of 0:

14934     delay=display_image->delay/MagickMax(display_image->ticks_per_second,1L);
(rr) bt
#0  XDisplayImage (display=display at entry=0x558dfa3c17f0, resource_info=resource_info at entry=0x7fff18991270, argv=0x558dfa3c15b0, argc=2, image=image at entry=0x7fff18990a50, state=state at entry=0x7fff18990a48) at ../../magick/display.c:14935
#1  0x00007fcdf05cfaa7 in DisplayImageCommand (image_info=0x558dfa3c9680, image_info at entry=0x558dfa3c54e0, argc=<optimized out>, argc at entry=2, argv=<optimized out>, argv at entry=0x7fff189926b8, wand_unused_metadata=wand_unused_metadata at entry=0x0, exception=exception at entry=0x558dfa3c4c10) at ../../wand/display.c:538
#2  0x00007fcdf0616f80 in MagickCommandGenesis (image_info=image_info at entry=0x558dfa3c54e0, command=0x7fcdf05cd5b0 <DisplayImageCommand>, argc=argc at entry=2, argv=argv at entry=0x7fff189926b8, metadata=metadata at entry=0x0, exception=exception at entry=0x558dfa3c4c10) at ../../wand/mogrify.c:173
#3  0x0000558df995d0fa in DisplayMain (argv=0x7fff189926b8, argc=2) at ../../utilities/display.c:89
#4  main (argc=2, argv=0x7fff189926b8) at ../../utilities/display.c:100
(rr) print display_image->ticks_per_second
$11 = 100
(rr) print display_image->delay
$12 = 20
(rr) next
14935     timer=GetMagickTime()+(delay == 0 ? 1 : delay)+1;
(rr) print delay
$13 = 0

https://sources.debian.org/src/imagemagick/8:6.9.11.60+dfsg-1.3/magick/display.c/#L14934



One could modify the delay to e.g. 1000 centiseconds == 10 seconds:

time display-im6.q16 -delay 1000 2006_08262.gif



I am not sure how this "Delay" and "Duration" is expected
to be interpreted (or ignored?) for a GIF with just one picture.


Kind regards,
Bernhard



More information about the Pkg-gmagick-im-team mailing list