Title: [135762] trunk/Source/WebCore
- Revision
- 135762
- Author
- mrobin...@webkit.org
- Date
- 2012-11-26 14:01:01 -0800 (Mon, 26 Nov 2012)
Log Message
[GTK] GtkSocket is leaked until webview is destroyed.
https://bugs.webkit.org/show_bug.cgi?id=102564
Patch by Arnaud Renevier <a.renev...@sisa.samsung.com> on 2012-11-26
Reviewed by Martin Robinson.
Remove GtkSocket from its parent when pluginview is destroyed. Then,
the GtkSocket and it's possible child widgets are realeased when it is
no more needed.
No new tests, already covered by existing tests.
* plugins/gtk/PluginViewGtk.cpp:
(WebCore::PluginView::platformDestroy):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (135761 => 135762)
--- trunk/Source/WebCore/ChangeLog 2012-11-26 22:00:15 UTC (rev 135761)
+++ trunk/Source/WebCore/ChangeLog 2012-11-26 22:01:01 UTC (rev 135762)
@@ -1,3 +1,19 @@
+2012-11-26 Arnaud Renevier <a.renev...@sisa.samsung.com>
+
+ [GTK] GtkSocket is leaked until webview is destroyed.
+ https://bugs.webkit.org/show_bug.cgi?id=102564
+
+ Reviewed by Martin Robinson.
+
+ Remove GtkSocket from its parent when pluginview is destroyed. Then,
+ the GtkSocket and it's possible child widgets are realeased when it is
+ no more needed.
+
+ No new tests, already covered by existing tests.
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::platformDestroy):
+
2012-11-26 Luke Macpherson <macpher...@chromium.org>
Make StyleResolver::applyProperty use isInherit in CSSPropertyWebkitMarquee instead of calculating equivalent in-place.
Modified: trunk/Source/WebCore/plugins/gtk/PluginViewGtk.cpp (135761 => 135762)
--- trunk/Source/WebCore/plugins/gtk/PluginViewGtk.cpp 2012-11-26 22:00:15 UTC (rev 135761)
+++ trunk/Source/WebCore/plugins/gtk/PluginViewGtk.cpp 2012-11-26 22:01:01 UTC (rev 135762)
@@ -883,6 +883,13 @@
XFreePixmap(GDK_DISPLAY_XDISPLAY(gdk_display_get_default()), m_drawable);
m_drawable = 0;
}
+
+ GtkWidget* widget = platformWidget();
+ if (widget) {
+ GtkWidget* parent = gtk_widget_get_parent(widget);
+ ASSERT(parent);
+ gtk_container_remove(GTK_CONTAINER(parent), widget);
+ }
}
} // namespace WebCore
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes