Title: [119847] trunk/Source/WebKit2
- Revision
- 119847
- Author
- [email protected]
- Date
- 2012-06-08 11:34:12 -0700 (Fri, 08 Jun 2012)
Log Message
[Qt] [WK2] API tests randomly assert in WebLayerTreeRenderer::assignImageToLayer
https://bugs.webkit.org/show_bug.cgi?id=88667
Reviewed by Noam Rosenthal.
Move deactivation of WebLayerTreeRenderer from LayerTreeHostProxy::purgeBackingStores
to WebLayerTreeRenderer::purgeGLResources. LayerTreeHostProxy::purgeBackingStores is
invoked on main thread after going through call gate and it is too late to deactivate
renderer here, because some update messages are able to go through.
WebLayerTreeRenderer::purgeGLResources is called directly from render node deallocation
and it is right place to deactivate renderer.
* UIProcess/LayerTreeHostProxy.cpp:
(WebKit::LayerTreeHostProxy::purgeBackingStores):
* UIProcess/WebLayerTreeRenderer.cpp:
(WebKit::WebLayerTreeRenderer::purgeGLResources):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (119846 => 119847)
--- trunk/Source/WebKit2/ChangeLog 2012-06-08 18:24:11 UTC (rev 119846)
+++ trunk/Source/WebKit2/ChangeLog 2012-06-08 18:34:12 UTC (rev 119847)
@@ -1,3 +1,22 @@
+2012-06-08 Viatcheslav Ostapenko <[email protected]>
+
+ [Qt] [WK2] API tests randomly assert in WebLayerTreeRenderer::assignImageToLayer
+ https://bugs.webkit.org/show_bug.cgi?id=88667
+
+ Reviewed by Noam Rosenthal.
+
+ Move deactivation of WebLayerTreeRenderer from LayerTreeHostProxy::purgeBackingStores
+ to WebLayerTreeRenderer::purgeGLResources. LayerTreeHostProxy::purgeBackingStores is
+ invoked on main thread after going through call gate and it is too late to deactivate
+ renderer here, because some update messages are able to go through.
+ WebLayerTreeRenderer::purgeGLResources is called directly from render node deallocation
+ and it is right place to deactivate renderer.
+
+ * UIProcess/LayerTreeHostProxy.cpp:
+ (WebKit::LayerTreeHostProxy::purgeBackingStores):
+ * UIProcess/WebLayerTreeRenderer.cpp:
+ (WebKit::WebLayerTreeRenderer::purgeGLResources):
+
2012-06-08 Carlos Garcia Campos <[email protected]>
[GTK] Add API to get the library version to WebKit2 GTK+
Modified: trunk/Source/WebKit2/UIProcess/LayerTreeHostProxy.cpp (119846 => 119847)
--- trunk/Source/WebKit2/UIProcess/LayerTreeHostProxy.cpp 2012-06-08 18:24:11 UTC (rev 119846)
+++ trunk/Source/WebKit2/UIProcess/LayerTreeHostProxy.cpp 2012-06-08 18:34:12 UTC (rev 119847)
@@ -157,7 +157,6 @@
void LayerTreeHostProxy::purgeBackingStores()
{
- m_renderer->setActive(false);
m_drawingAreaProxy->page()->process()->send(Messages::LayerTreeHost::PurgeBackingStores(), m_drawingAreaProxy->page()->pageID());
}
Modified: trunk/Source/WebKit2/UIProcess/WebLayerTreeRenderer.cpp (119846 => 119847)
--- trunk/Source/WebKit2/UIProcess/WebLayerTreeRenderer.cpp 2012-06-08 18:24:11 UTC (rev 119846)
+++ trunk/Source/WebKit2/UIProcess/WebLayerTreeRenderer.cpp 2012-06-08 18:34:12 UTC (rev 119847)
@@ -458,6 +458,8 @@
m_textureMapper.clear();
m_backingStoresWithPendingBuffers.clear();
+ setActive(false);
+
callOnMainThread(bind(&WebLayerTreeRenderer::purgeBackingStores, this));
}
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes