<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [GTK] Crash attempting to load Flash plugin in Wayland"
href="https://bugs.webkit.org/show_bug.cgi?id=163159#c5">Comment # 5</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [GTK] Crash attempting to load Flash plugin in Wayland"
href="https://bugs.webkit.org/show_bug.cgi?id=163159">bug 163159</a>
from <span class="vcard"><a class="email" href="mailto:mcatanzaro@igalia.com" title="Michael Catanzaro <mcatanzaro@igalia.com>"> <span class="fn">Michael Catanzaro</span></a>
</span></b>
<pre>(In reply to <a href="show_bug.cgi?id=163159#c4">comment #4</a>)
<span class="quote">> No, it will never reach there, now that the bug is fixed.</span >
As I said above, the UI process should be robust against the message being sent from a compromised or malfunctioning plugin process.
<span class="quote">> > > Source/WebKit2/UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp:80
> > > + if (PlatformDisplay::sharedDisplay().type() == PlatformDisplay::Type::Wayland)
> >
> > The check should be if type != X11, not if type == Wayland. I know that
> > makes the conditionals come out less-cleanly, but let's do it right.
>
> Nope, I'm not sure if it's possible but if you build with wayland and X11
> disabled, you can't do that, because Type::X11 is not defined.</span >
Then always return in that case.
But you don't even have to bother with that. You know PLATFORM(X11) is guaranteed inside ENABLE_PLUGIN_PROCESS_GTK2 or ENABLE_NETSCAPE_PLUGIN_API because both have dependencies on it:
# OptionsGTK.cmake
WEBKIT_OPTION_DEPEND(ENABLE_NETSCAPE_PLUGIN_API ENABLE_X11_TARGET)
WEBKIT_OPTION_DEPEND(ENABLE_PLUGIN_PROCESS_GTK2 ENABLE_X11_TARGET)</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>