RESOLVED FIXED 10779
REGRESSION: Animated GIF ignores frame intervals and loops infinitely
https://bugs.webkit.org/show_bug.cgi?id=10779
Summary REGRESSION: Animated GIF ignores frame intervals and loops infinitely
Mike Filippone (donkeyentertain)
Reported 2006-09-07 21:42:39 PDT
Note: Safari does not seem to have this problem, only WebKit. Came across this one on http://panic.com/transmit/. The animated gif should load and not loop at all. However, on occasion (not consistently, you may have to refresh 10-20 times to get it to reproduce) it will load and repeat infinitely, as well as ignore frame rate data. i.e., it will display a frame the default length instead of 100ms or whatever the animated gif specifies. It seems like it reproduces more often when the image is taking longer to load, and almost seems like it happens when the image starts to play the instant the blue bar in the Safari URL field indicates the page is loaded. I cannot reproduce the bug loading the same image locally, no matter how many times I refresh. The only time it seems to reproduce is when the image is loading off a webserver, whether Panic's or my own. And on my server, the page seemed like it was loading faster, and it also took many more refreshes to get it to reproduce. Anyways, I left the image src pointing to Panic's severs in the reduction html file. I'll also post up the animated GIF in case if it's a strange file structure or something like that.
Attachments
reduction/test case (412 bytes, text/html)
2006-09-07 21:43 PDT, Mike Filippone (donkeyentertain)
no flags
the [possibly problematic] animated gif (88.14 KB, image/gif)
2006-09-07 21:45 PDT, Mike Filippone (donkeyentertain)
no flags
proposed fix (1.58 KB, patch)
2006-09-17 04:37 PDT, Alexey Proskuryakov
hyatt: review+
Mike Filippone (donkeyentertain)
Comment 1 2006-09-07 21:43:49 PDT
Created attachment 10447 [details] reduction/test case
Mike Filippone (donkeyentertain)
Comment 2 2006-09-07 21:45:23 PDT
Created attachment 10448 [details] the [possibly problematic] animated gif Not sure if the image is the root of the problem or not, but attached it anyways.
Alexey Proskuryakov
Comment 3 2006-09-17 04:36:26 PDT
If the image is first drawn at the moment when there is only one frame loaded yet, the repetition count simply doesn't get checked at all, so its initial value of 0 (loop forever) is used. Same issue with the duration of the first frame (the rest seem to be OK).
Alexey Proskuryakov
Comment 4 2006-09-17 04:37:14 PDT
Created attachment 10600 [details] proposed fix
Dave Hyatt
Comment 5 2006-09-17 17:46:10 PDT
Comment on attachment 10600 [details] proposed fix Yeah this looks ok. r=me
Alexey Proskuryakov
Comment 6 2006-09-17 21:56:47 PDT
Committed revision 16417.
Note You need to log in before you can comment on or make changes to this bug.