Title: [165183] releases/WebKitGTK/webkit-2.4/Tools
Revision
165183
Author
[email protected]
Date
2014-03-06 04:14:38 -0800 (Thu, 06 Mar 2014)

Log Message

Merge r165181 - [GTK] MiniBrowser crashes when opening several urls passed as command line options
https://bugs.webkit.org/show_bug.cgi?id=129738

Reviewed by Sergio Villar Senin.

The problem is that we are calling g_object_unref() for the
WebKitWebSettings everytime we set it to a WebKitWebView, but the
view only increases the reference counter when the settings is not
the same it currently has. We should release our reference once.

* MiniBrowser/gtk/main.c:
(createBrowserWindow):
(main):

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.4/Tools/ChangeLog (165182 => 165183)


--- releases/WebKitGTK/webkit-2.4/Tools/ChangeLog	2014-03-06 12:12:19 UTC (rev 165182)
+++ releases/WebKitGTK/webkit-2.4/Tools/ChangeLog	2014-03-06 12:14:38 UTC (rev 165183)
@@ -1,3 +1,19 @@
+2014-03-06  Carlos Garcia Campos  <[email protected]>
+
+        [GTK] MiniBrowser crashes when opening several urls passed as command line options
+        https://bugs.webkit.org/show_bug.cgi?id=129738
+
+        Reviewed by Sergio Villar Senin.
+
+        The problem is that we are calling g_object_unref() for the
+        WebKitWebSettings everytime we set it to a WebKitWebView, but the
+        view only increases the reference counter when the settings is not
+        the same it currently has. We should release our reference once.
+
+        * MiniBrowser/gtk/main.c:
+        (createBrowserWindow):
+        (main):
+
 2014-02-10  Carlos Garcia Campos  <[email protected]>
 
         [GLIB] Add GUniqueOutPtr and use it instead of GOwnPtr

Modified: releases/WebKitGTK/webkit-2.4/Tools/MiniBrowser/gtk/main.c (165182 => 165183)


--- releases/WebKitGTK/webkit-2.4/Tools/MiniBrowser/gtk/main.c	2014-03-06 12:12:19 UTC (rev 165182)
+++ releases/WebKitGTK/webkit-2.4/Tools/MiniBrowser/gtk/main.c	2014-03-06 12:14:38 UTC (rev 165183)
@@ -60,10 +60,8 @@
     GtkWidget *mainWindow = browser_window_new(WEBKIT_WEB_VIEW(webView), NULL);
     gchar *url = ""
 
-    if (webkitSettings) {
+    if (webkitSettings)
         webkit_web_view_set_settings(WEBKIT_WEB_VIEW(webView), webkitSettings);
-        g_object_unref(webkitSettings);
-    }
 
     browser_window_load_uri(BROWSER_WINDOW(mainWindow), url);
     g_free(url);
@@ -254,10 +252,8 @@
     WebKitSettings *webkitSettings = webkit_settings_new();
     webkit_settings_set_enable_developer_extras(webkitSettings, TRUE);
     webkit_settings_set_enable_webgl(webkitSettings, TRUE);
-    if (!addSettingsGroupToContext(context, webkitSettings)) {
-        g_object_unref(webkitSettings);
-        webkitSettings = 0;
-    }
+    if (!addSettingsGroupToContext(context, webkitSettings))
+        g_clear_object(&webkitSettings);
 
     GError *error = 0;
     if (!g_option_context_parse(context, &argc, &argv, &error)) {
@@ -284,6 +280,8 @@
     } else
         createBrowserWindow("http://www.webkitgtk.org/", webkitSettings);
 
+    g_clear_object(&webkitSettings);
+
     gtk_main();
 
     return 0;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to