Title: [151995] trunk/Source/WebKit/blackberry
Revision
151995
Author
[email protected]
Date
2013-06-26 10:18:15 -0700 (Wed, 26 Jun 2013)

Log Message

[BlackBerry] ASSERT(!m_tileMatrixNeedsUpdate) in BackingStorePrivate::render()
https://bugs.webkit.org/show_bug.cgi?id=118062

Patch by Jacky Jiang <[email protected]> on 2013-06-26.
Reviewed by Rob Buis.
Internally reviewed by Jakob Petsovits.

JIRA426949
requestLayoutIfNeeded() can cause zoomAboutPoint() when the layout
is finished and make the tile matrix stale. We need requestLayoutIfNeeded()
before we updateTileMatrixIfNeeded() so that we can fix the ASSERT and
also pass the valid TileIndexList to render().

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::resumeScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::render):

Modified Paths

Diff

Modified: trunk/Source/WebKit/blackberry/Api/BackingStore.cpp (151994 => 151995)


--- trunk/Source/WebKit/blackberry/Api/BackingStore.cpp	2013-06-26 17:03:48 UTC (rev 151994)
+++ trunk/Source/WebKit/blackberry/Api/BackingStore.cpp	2013-06-26 17:18:15 UTC (rev 151995)
@@ -284,6 +284,9 @@
 
     // Render visible contents if necessary.
     if (op == BackingStore::RenderAndBlit) {
+        if (m_webPage->isVisible())
+            requestLayoutIfNeeded();
+
         updateTileMatrixIfNeeded();
         TileIndexList visibleTiles = visibleTileIndexes(frontState());
         TileIndexList renderedTiles = render(visibleTiles);
@@ -1081,8 +1084,6 @@
     if (!m_webPage->isVisible())
         return TileIndexList();
 
-    requestLayoutIfNeeded();
-
     // If no tiles available for us to draw to, someone else has to render the root layer.
     if (!isActive())
         return TileIndexList();

Modified: trunk/Source/WebKit/blackberry/ChangeLog (151994 => 151995)


--- trunk/Source/WebKit/blackberry/ChangeLog	2013-06-26 17:03:48 UTC (rev 151994)
+++ trunk/Source/WebKit/blackberry/ChangeLog	2013-06-26 17:18:15 UTC (rev 151995)
@@ -1,3 +1,21 @@
+2013-06-26  Jacky Jiang  <[email protected]>
+
+        [BlackBerry] ASSERT(!m_tileMatrixNeedsUpdate) in BackingStorePrivate::render()
+        https://bugs.webkit.org/show_bug.cgi?id=118062
+
+        Reviewed by Rob Buis.
+        Internally reviewed by Jakob Petsovits.
+
+        JIRA426949
+        requestLayoutIfNeeded() can cause zoomAboutPoint() when the layout
+        is finished and make the tile matrix stale. We need requestLayoutIfNeeded()
+        before we updateTileMatrixIfNeeded() so that we can fix the ASSERT and
+        also pass the valid TileIndexList to render().
+
+        * Api/BackingStore.cpp:
+        (BlackBerry::WebKit::BackingStorePrivate::resumeScreenUpdates):
+        (BlackBerry::WebKit::BackingStorePrivate::render):
+
 2013-06-25  Kangil Han  <[email protected]>
 
         Adopt is/toHTMLAnchorElement for code cleanup
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to