[Webkit-unassigned] [Bug 93764] New: Skipping frames in animated GIFs (or other multiframe images) can cause inifinite loop in WebCore::BitmapImage::startAnimation()
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Sat Aug 11 03:10:24 PDT 2012
https://bugs.webkit.org/show_bug.cgi?id=93764
Summary: Skipping frames in animated GIFs (or other multiframe
images) can cause inifinite loop in
WebCore::BitmapImage::startAnimation()
Product: WebKit
Version: 528+ (Nightly build)
Platform: All
OS/Version: All
Status: UNCONFIRMED
Severity: Normal
Priority: P2
Component: Images
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: tobias.netzel at googlemail.com
Created an attachment (id=157864)
--> (https://bugs.webkit.org/attachment.cgi?id=157864&action=review)
don't force decoding of skipped frames
The current code for frame skipping in WebCore::BitmapImage::startAnimation() forces decoding of skipped frames by calling frameIsCompleteAtIndex() and frameDurationAtIndex(). On slow or VERY busy machines and animated images larger than 5MB ( ->cLargeAnimationCutoff) that will cause the for loop to be started over and over again without displaying any frames in case decoding the frame takes more time than the frame's duration. Effectively the application will seem to hang.
In the patch I made that frame skipping loop do it the same way as the loop in BitmapImage::dataChanged(); the comment in dataChanged() is also valid for the frame skipping loop.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list