Skip to content
Permalink
Browse files
2011-02-11 Anders Carlsson <andersca@apple.com>
        Reviewed by Sam Weinig.

        WebProcess hung communicating with the plug-in process
        https://bugs.webkit.org/show_bug.cgi?id=54328
        <rdar://problem/8854075>

        * UIProcess/Plugins/PluginProcessProxy.cpp:
        (WebKit::PluginProcessProxy::createWebProcessConnection):
        Add the DispatchMessageEvenWhenWaitingForSyncReply message send flag when sending the
        PluginProcess::CreateWebProcessConnection message, since the plug-in process can be busy waiting
        for a sync reply from the web process.


Canonical link: https://commits.webkit.org/68403@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@78400 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
Anders Carlsson committed Feb 12, 2011
1 parent ac13a45 commit 5c2db9801b8a9f5694d9e47060340acf7fe8e31a
Showing with 17 additions and 2 deletions.
  1. +14 −0 Source/WebKit2/ChangeLog
  2. +3 −2 Source/WebKit2/UIProcess/Plugins/PluginProcessProxy.cpp
@@ -1,3 +1,17 @@
2011-02-11 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

WebProcess hung communicating with the plug-in process
https://bugs.webkit.org/show_bug.cgi?id=54328
<rdar://problem/8854075>

* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::createWebProcessConnection):
Add the DispatchMessageEvenWhenWaitingForSyncReply message send flag when sending the
PluginProcess::CreateWebProcessConnection message, since the plug-in process can be busy waiting
for a sync reply from the web process.

2011-02-11 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.
@@ -72,8 +72,9 @@ void PluginProcessProxy::createWebProcessConnection(WebProcessProxy* webProcessP
return;
}

// Ask the plug-in process to create a connection.
m_connection->send(Messages::PluginProcess::CreateWebProcessConnection(), 0);
// Ask the plug-in process to create a connection. Since the plug-in can be waiting for a synchronous reply
// we need to make sure that this message is always processed, even when the plug-in is waiting for a synchronus reply.
m_connection->send(Messages::PluginProcess::CreateWebProcessConnection(), 0, CoreIPC::DispatchMessageEvenWhenWaitingForSyncReply);
}

void PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch()

0 comments on commit 5c2db98

Please sign in to comment.