Title: [137663] trunk
Revision
137663
Author
[email protected]
Date
2012-12-13 15:21:54 -0800 (Thu, 13 Dec 2012)

Log Message

[chromium] Small fixes for WebPluginContainer::setWebLayer
https://bugs.webkit.org/show_bug.cgi?id=104953

Reviewed by James Robinson.

Source/WebKit/chromium:

* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl): Allow
WebPlugin to clean up dangling pointers.

Tools:

* DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp: Clean up
dangling pointers, force correct invalidation of the layer.

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (137662 => 137663)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-12-13 23:19:51 UTC (rev 137662)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-12-13 23:21:54 UTC (rev 137663)
@@ -1,5 +1,16 @@
 2012-12-13  Antoine Labour  <[email protected]>
 
+        [chromium] Small fixes for WebPluginContainer::setWebLayer
+        https://bugs.webkit.org/show_bug.cgi?id=104953
+
+        Reviewed by James Robinson.
+
+        * src/WebPluginContainerImpl.cpp:
+        (WebKit::WebPluginContainerImpl::~WebPluginContainerImpl): Allow
+        WebPlugin to clean up dangling pointers.
+
+2012-12-13  Antoine Labour  <[email protected]>
+
         [chromium] Add WebPluginContainer::setWebLayer to supersede setBackingTextureId/setBackingIOSurfaceId
         https://bugs.webkit.org/show_bug.cgi?id=104875
 

Modified: trunk/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp (137662 => 137663)


--- trunk/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp	2012-12-13 23:19:51 UTC (rev 137662)
+++ trunk/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp	2012-12-13 23:21:54 UTC (rev 137663)
@@ -671,17 +671,16 @@
 
 WebPluginContainerImpl::~WebPluginContainerImpl()
 {
-#if USE(ACCELERATED_COMPOSITING)
-    if (m_webLayer)
-        GraphicsLayerChromium::unregisterContentsLayer(m_webLayer);
-#endif
-
     if (m_touchEventRequestType != TouchEventRequestTypeNone)
         m_element->document()->didRemoveTouchEventHandler(m_element);
 
     for (size_t i = 0; i < m_pluginLoadObservers.size(); ++i)
         m_pluginLoadObservers[i]->clearPluginContainer();
     m_webPlugin->destroy();
+#if USE(ACCELERATED_COMPOSITING)
+    if (m_webLayer)
+        GraphicsLayerChromium::unregisterContentsLayer(m_webLayer);
+#endif
 }
 
 void WebPluginContainerImpl::handleMouseEvent(MouseEvent* event)

Modified: trunk/Tools/ChangeLog (137662 => 137663)


--- trunk/Tools/ChangeLog	2012-12-13 23:19:51 UTC (rev 137662)
+++ trunk/Tools/ChangeLog	2012-12-13 23:21:54 UTC (rev 137663)
@@ -1,3 +1,13 @@
+2012-12-13  Antoine Labour  <[email protected]>
+
+        [chromium] Small fixes for WebPluginContainer::setWebLayer
+        https://bugs.webkit.org/show_bug.cgi?id=104953
+
+        Reviewed by James Robinson.
+
+        * DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp: Clean up
+        dangling pointers, force correct invalidation of the layer.
+
 2012-12-13  Eric Seidel  <[email protected]>
 
         Add --profiler=PROFILER option to run-perf-tests to allow specifying which profiler to use on platforms with many

Modified: trunk/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp (137662 => 137663)


--- trunk/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp	2012-12-13 23:19:51 UTC (rev 137662)
+++ trunk/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp	2012-12-13 23:21:54 UTC (rev 137663)
@@ -311,6 +311,8 @@
 
 void WebTestPluginImpl::destroy()
 {
+    if (m_container)
+        m_container->setWebLayer(0);
     m_layer.clear();
     destroyScene();
 
@@ -344,7 +346,7 @@
     drawScene();
 
     m_context->flush();
-    m_container->commitBackingTexture();
+    m_layer->layer()->invalidate();
 }
 
 WebTestPluginImpl::Primitive WebTestPluginImpl::parsePrimitive(const WebString& string)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to