[Webkit-unassigned] [Bug 136214] New: [GTK] Should check if a plugin mixes GTK+ symbols earlier

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Aug 25 03:10:17 PDT 2014


           Summary: [GTK] Should check if a plugin mixes GTK+ symbols
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Keywords: Gtk
          Severity: Normal
          Priority: P2
         Component: WebKit Gtk
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: cgarcia at igalia.com

We are currently checking if the plugin module and the plugin process mix GTK symbols after the plugin has been loaded and initialized. This is too late in many cases, since plugins can use GTK methods in the NP_Initialize implementation. This is causing the apps using WebKitGTK+ 2.4 to freeze when the plugin process scans the plugins and there's a plugin using GTK+3. See:

$ Programs/WebKitPluginProcess -scanPlugin /usr/lib/mozilla/plugins/libevbrowserplugin.so

(WebKitPluginProcess:15409): GLib-GObject-WARNING **: cannot register existing type 'GtkSettings'

(WebKitPluginProcess:15409): GLib-GObject-WARNING **: cannot add private field to invalid (non-instantiatable) type '<invalid>'

(WebKitPluginProcess:15409): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed

(WebKitPluginProcess:15409): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed

(WebKitPluginProcess:15409): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed

And the plugin process hangs here, and since the UI process calls WebKitPluginProcess -scanPlugin synchronously it freezes forever.

We should move the check earlier, once the module is loaded but before calling NP_Initialize.

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list