<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [GTK] Browser plugins crash under Wayland"
   href="https://bugs.webkit.org/show_bug.cgi?id=157605#c6">Comment # 6</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [GTK] Browser plugins crash under Wayland"
   href="https://bugs.webkit.org/show_bug.cgi?id=157605">bug 157605</a>
              from <span class="vcard"><a class="email" href="mailto:mcatanzaro&#64;igalia.com" title="Michael Catanzaro &lt;mcatanzaro&#64;igalia.com&gt;"> <span class="fn">Michael Catanzaro</span></a>
</span></b>
        <pre>The plugin process is creating a GtkPlug before it crashes, but I don't think it's being created anywhere inside WebKit. Yes, I know that doesn't make sense, but our only use of gtk_plug_new is in NetscapePluginX11.cpp in the constructor, and I've added WTFLogAlways and ASSERT_NOT_REACHED at the top of the constructor and it's definitely not being called. I even checked to make sure we're not passing GTK_TYPE_PLUG directly to g_object_new anywhere.

Anyway, PluginProxy::geometryDidChange and then NetscapePlugin::geometryDidChange are both being called before the crash. It's not so unexpected because this is the evince browser plugin, it's a windowed plugin; the code to stop us from creating a windowed plugin under Wayland must not be working.

Related: it's quite frustrating that we have the NetscapePlugin class under the WebProcess directory when it's also used by the plugin process; makes everything needlessly confusing. ;/</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>