Title: [149762] trunk/Source/WebKit2
- Revision
- 149762
- Author
- [email protected]
- Date
- 2013-05-08 13:06:31 -0700 (Wed, 08 May 2013)
Log Message
Safari unexpectedly quits with invalid message from the web process with message ID 0x323002f (WebPageProxy.DecidePolicyForNavigationAction)
https://bugs.webkit.org/show_bug.cgi?id=115814
<rdar://problem/12331258>
Reviewed by Andreas Kling.
To ensure that any asynchronous messages are delivered to the UI process before
synchronous messages (except when doing so would lead to a deadlock), Call
setOnlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage on the UI process connections.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeConnection):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (149761 => 149762)
--- trunk/Source/WebKit2/ChangeLog 2013-05-08 20:02:45 UTC (rev 149761)
+++ trunk/Source/WebKit2/ChangeLog 2013-05-08 20:06:31 UTC (rev 149762)
@@ -1,3 +1,18 @@
+2013-05-08 Anders Carlsson <[email protected]>
+
+ Safari unexpectedly quits with invalid message from the web process with message ID 0x323002f (WebPageProxy.DecidePolicyForNavigationAction)
+ https://bugs.webkit.org/show_bug.cgi?id=115814
+ <rdar://problem/12331258>
+
+ Reviewed by Andreas Kling.
+
+ To ensure that any asynchronous messages are delivered to the UI process before
+ synchronous messages (except when doing so would lead to a deadlock), Call
+ setOnlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage on the UI process connections.
+
+ * WebProcess/WebProcess.cpp:
+ (WebKit::WebProcess::initializeConnection):
+
2013-05-08 Tim Horton <[email protected]>
Coalesce WKView visibleRect changes
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (149761 => 149762)
--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2013-05-08 20:02:45 UTC (rev 149761)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2013-05-08 20:06:31 UTC (rev 149762)
@@ -241,6 +241,12 @@
it->value->initializeConnection(connection);
m_webConnection = WebConnectionToUIProcess::create(this);
+
+ // In order to ensure that the asynchronous messages that are used for notifying the UI process
+ // about when WebFrame objects come and go are always delivered before the synchronous policy messages,
+ // use this flag to force synchronous messages to be treaded as asynchronous messages in the UI process
+ // unless when doing so would lead to a deadlock.
+ connection->setOnlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage(true);
}
void WebProcess::didCreateDownload()
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes