Title: [259974] releases/WebKitGTK/webkit-2.28/Tools
- Revision
- 259974
- Author
- [email protected]
- Date
- 2020-04-12 06:17:11 -0700 (Sun, 12 Apr 2020)
Log Message
Merge r259339 - [GTK] MiniBrowser: valgrind claims 'Invalid write of size 8' on close
https://bugs.webkit.org/show_bug.cgi?id=209471
Reviewed by Adrian Perez de Castro.
This is because we need to remove the weak pointer added in child windows to their parent.
* MiniBrowser/gtk/BrowserWindow.c:
(browserWindowDispose): Remove the parentWindow weak ref.
(browser_window_class_init): Add dispose.
Modified Paths
Diff
Modified: releases/WebKitGTK/webkit-2.28/Tools/ChangeLog (259973 => 259974)
--- releases/WebKitGTK/webkit-2.28/Tools/ChangeLog 2020-04-12 13:17:08 UTC (rev 259973)
+++ releases/WebKitGTK/webkit-2.28/Tools/ChangeLog 2020-04-12 13:17:11 UTC (rev 259974)
@@ -1,3 +1,16 @@
+2020-04-01 Carlos Garcia Campos <[email protected]>
+
+ [GTK] MiniBrowser: valgrind claims 'Invalid write of size 8' on close
+ https://bugs.webkit.org/show_bug.cgi?id=209471
+
+ Reviewed by Adrian Perez de Castro.
+
+ This is because we need to remove the weak pointer added in child windows to their parent.
+
+ * MiniBrowser/gtk/BrowserWindow.c:
+ (browserWindowDispose): Remove the parentWindow weak ref.
+ (browser_window_class_init): Add dispose.
+
2020-03-21 Michael Catanzaro <[email protected]>
[GTK] Use ${PYTHON_EXECUTABLE} to run generate-gtkdoc
Modified: releases/WebKitGTK/webkit-2.28/Tools/MiniBrowser/gtk/BrowserWindow.c (259973 => 259974)
--- releases/WebKitGTK/webkit-2.28/Tools/MiniBrowser/gtk/BrowserWindow.c 2020-04-12 13:17:08 UTC (rev 259973)
+++ releases/WebKitGTK/webkit-2.28/Tools/MiniBrowser/gtk/BrowserWindow.c 2020-04-12 13:17:11 UTC (rev 259974)
@@ -711,6 +711,18 @@
gtk_main_quit();
}
+static void browserWindowDispose(GObject *gObject)
+{
+ BrowserWindow *window = BROWSER_WINDOW(gObject);
+
+ if (window->parentWindow) {
+ g_object_remove_weak_pointer(G_OBJECT(window->parentWindow), (gpointer *)&window->parentWindow);
+ window->parentWindow = NULL;
+ }
+
+ G_OBJECT_CLASS(browser_window_parent_class)->dispose(gObject);
+}
+
static void browserWindowSetupEditorToolbar(BrowserWindow *window)
{
GtkWidget *toolbar = gtk_toolbar_new();
@@ -1126,6 +1138,7 @@
GObjectClass *gobjectClass = G_OBJECT_CLASS(klass);
gobjectClass->constructed = browserWindowConstructed;
+ gobjectClass->dispose = browserWindowDispose;
gobjectClass->finalize = browserWindowFinalize;
GtkWidgetClass *widgetClass = GTK_WIDGET_CLASS(klass);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes