Title: [141135] trunk/Source/WebCore
Revision
141135
Author
commit-qu...@webkit.org
Date
2013-01-29 11:09:48 -0800 (Tue, 29 Jan 2013)

Log Message

Fix a problem that deferred image decoding is enabled for multiframe images
https://bugs.webkit.org/show_bug.cgi?id=108152

Patch by Min Qin <qin...@chromium.org> on 2013-01-29
Reviewed by Stephen White.

Deferred image decoding should only work for single frame images now.
However, using ImageDecoder::repetitionCount() does not capture all the cases.
Enforce the rule using ImageDecoder::frameCount()==1.
Fixing a failing layout test: platform/chromium/virtual/deferred/fast/images/icon-0colors.html

* platform/graphics/chromium/DeferredImageDecoder.cpp:
(WebCore::DeferredImageDecoder::frameBufferAtIndex):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (141134 => 141135)


--- trunk/Source/WebCore/ChangeLog	2013-01-29 19:01:36 UTC (rev 141134)
+++ trunk/Source/WebCore/ChangeLog	2013-01-29 19:09:48 UTC (rev 141135)
@@ -1,3 +1,18 @@
+2013-01-29  Min Qin  <qin...@chromium.org>
+
+        Fix a problem that deferred image decoding is enabled for multiframe images
+        https://bugs.webkit.org/show_bug.cgi?id=108152
+
+        Reviewed by Stephen White.
+
+        Deferred image decoding should only work for single frame images now.
+        However, using ImageDecoder::repetitionCount() does not capture all the cases.
+        Enforce the rule using ImageDecoder::frameCount()==1.
+        Fixing a failing layout test: platform/chromium/virtual/deferred/fast/images/icon-0colors.html
+
+        * platform/graphics/chromium/DeferredImageDecoder.cpp:
+        (WebCore::DeferredImageDecoder::frameBufferAtIndex):
+
 2013-01-29  Elliott Sprehn  <espr...@chromium.org>
 
         Move ElementShadow creation to ElementRareData

Modified: trunk/Source/WebCore/platform/graphics/chromium/DeferredImageDecoder.cpp (141134 => 141135)


--- trunk/Source/WebCore/platform/graphics/chromium/DeferredImageDecoder.cpp	2013-01-29 19:01:36 UTC (rev 141134)
+++ trunk/Source/WebCore/platform/graphics/chromium/DeferredImageDecoder.cpp	2013-01-29 19:09:48 UTC (rev 141135)
@@ -110,7 +110,8 @@
     if (s_enabled
         && m_actualDecoder
         && m_actualDecoder->repetitionCount() == cAnimationNone
-        && m_actualDecoder->isSizeAvailable()) {
+        && m_actualDecoder->isSizeAvailable()
+        && m_actualDecoder->frameCount() == 1) {
 
         m_size = m_actualDecoder->size();
         m_filenameExtension = m_actualDecoder->filenameExtension();
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to