Title: [133164] trunk/Source/WebKit/chromium
Revision
133164
Author
commit-qu...@webkit.org
Date
2012-11-01 07:22:21 -0700 (Thu, 01 Nov 2012)

Log Message

[chromium] Avoid attempting to defer commits when they are already deferred
https://bugs.webkit.org/show_bug.cgi?id=100913

Patch by James Robinson <jam...@chromium.org> on 2012-11-01
Reviewed by Adrienne Walker.

In threaded compositing mode, it's possible to load and unload FrameViews without any
intervening invalidations. In this case, we enter setIsAcceleratedCompositingActive
with commits already deferred.  There's no need to defer again and doing so trips
an assertion in the implementation.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit):

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (133163 => 133164)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-11-01 14:17:40 UTC (rev 133163)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-11-01 14:22:21 UTC (rev 133164)
@@ -1,3 +1,19 @@
+2012-11-01  James Robinson  <jam...@chromium.org>
+
+        [chromium] Avoid attempting to defer commits when they are already deferred
+        https://bugs.webkit.org/show_bug.cgi?id=100913
+
+        Reviewed by Adrienne Walker.
+
+        In threaded compositing mode, it's possible to load and unload FrameViews without any
+        intervening invalidations. In this case, we enter setIsAcceleratedCompositingActive
+        with commits already deferred.  There's no need to defer again and doing so trips
+        an assertion in the implementation.
+
+        * src/WebViewImpl.cpp:
+        (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
+        (WebKit):
+
 2012-11-01  Sheriff Bot  <webkit.review....@gmail.com>
 
         Unreviewed.  Rolled DEPS.

Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (133163 => 133164)


--- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2012-11-01 14:17:40 UTC (rev 133163)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2012-11-01 14:22:21 UTC (rev 133164)
@@ -3931,7 +3931,8 @@
         if (m_layerTreeView && !page()->settings()->forceCompositingMode())
             m_layerTreeView->finishAllRendering();
         m_client->didDeactivateCompositor();
-        if (WebKit::Platform::current()->compositorSupport()->isThreadingEnabled()) {
+        if (!m_layerTreeViewCommitsDeferred
+            && WebKit::Platform::current()->compositorSupport()->isThreadingEnabled()) {
             ASSERT(m_layerTreeView);
             // In threaded compositing mode, force compositing mode is always on so setIsAcceleratedCompositingActive(false)
             // means that we're transitioning to a new page. Suppress commits until WebKit generates invalidations so
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to