Title: [135907] branches/safari-536.28-branch/Source/WebKit2
- Revision
- 135907
- Author
- [email protected]
- Date
- 2012-11-27 13:05:32 -0800 (Tue, 27 Nov 2012)
Log Message
Merge patch for <rdar://problem/11755093>
Modified Paths
Diff
Modified: branches/safari-536.28-branch/Source/WebKit2/ChangeLog (135906 => 135907)
--- branches/safari-536.28-branch/Source/WebKit2/ChangeLog 2012-11-27 21:00:23 UTC (rev 135906)
+++ branches/safari-536.28-branch/Source/WebKit2/ChangeLog 2012-11-27 21:05:32 UTC (rev 135907)
@@ -1,3 +1,18 @@
+2012-11-27 Anders Carlsson <[email protected]>
+
+ <rdar://problem/11755093>
+ Add API to set a global function callback for when invalid messages are received from the web process.
+
+ * UIProcess/API/C/WKPage.cpp:
+ (WKPageSetInvalidMessageFunction):
+ * UIProcess/API/C/WKPagePrivate.h:
+ * UIProcess/WebPageProxy.cpp:
+ * UIProcess/WebProcessProxy.cpp:
+ (WebKit::WebProcessProxy::didReceiveInvalidMessage):
+ (WebKit::WebProcessProxy::setInvalidMessageCallback):
+ * UIProcess/WebProcessProxy.h:
+ (WebProcessProxy):
+
2012-11-27 Lucas Forschler <[email protected]>
Merge r133702
Modified: branches/safari-536.28-branch/Source/WebKit2/UIProcess/API/C/WKPage.cpp (135906 => 135907)
--- branches/safari-536.28-branch/Source/WebKit2/UIProcess/API/C/WKPage.cpp 2012-11-27 21:00:23 UTC (rev 135906)
+++ branches/safari-536.28-branch/Source/WebKit2/UIProcess/API/C/WKPage.cpp 2012-11-27 21:05:32 UTC (rev 135907)
@@ -688,3 +688,8 @@
{
toImpl(page)->setMediaVolume(volume);
}
+
+void WKPageSetInvalidMessageFunction(WKPageInvalidMessageFunction function)
+{
+ WebProcessProxy::setInvalidMessageCallback(function);
+}
Modified: branches/safari-536.28-branch/Source/WebKit2/UIProcess/API/C/WKPagePrivate.h (135906 => 135907)
--- branches/safari-536.28-branch/Source/WebKit2/UIProcess/API/C/WKPagePrivate.h 2012-11-27 21:00:23 UTC (rev 135906)
+++ branches/safari-536.28-branch/Source/WebKit2/UIProcess/API/C/WKPagePrivate.h 2012-11-27 21:05:32 UTC (rev 135907)
@@ -92,6 +92,9 @@
WK_EXPORT void WKPageSetMediaVolume(WKPageRef page, float volume);
+typedef void (*WKPageInvalidMessageFunction)(uint32_t messageID);
+WK_EXPORT void WKPageSetInvalidMessageFunction(WKPageInvalidMessageFunction function);
+
#ifdef __cplusplus
}
#endif
Modified: branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebProcessProxy.cpp (135906 => 135907)
--- branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebProcessProxy.cpp 2012-11-27 21:00:23 UTC (rev 135906)
+++ branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebProcessProxy.cpp 2012-11-27 21:05:32 UTC (rev 135907)
@@ -374,10 +374,15 @@
pages[i]->processDidCrash();
}
+void (*s_invalidMessageCallback)(uint32_t messageID);
+
void WebProcessProxy::didReceiveInvalidMessage(CoreIPC::Connection*, CoreIPC::MessageID messageID)
{
WTFLogAlways("Received an invalid message from the web process with message ID %x\n", messageID.toInt());
+ if (s_invalidMessageCallback)
+ s_invalidMessageCallback(messageID.toInt());
+
// Terminate the WebProcesses.
terminate();
}
@@ -502,4 +507,9 @@
send(Messages::WebProcess::SetTextCheckerState(TextChecker::state()), 0);
}
+void WebProcessProxy::setInvalidMessageCallback(void (*invalidMessageCallback)(uint32_t))
+{
+ s_invalidMessageCallback = invalidMessageCallback;
+}
+
} // namespace WebKit
Modified: branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebProcessProxy.h (135906 => 135907)
--- branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebProcessProxy.h 2012-11-27 21:00:23 UTC (rev 135906)
+++ branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebProcessProxy.h 2012-11-27 21:05:32 UTC (rev 135907)
@@ -116,6 +116,8 @@
// FIXME: This variant of send is deprecated. All clients should move to an overload that take a message type.
template<typename E, typename T> bool deprecatedSend(E messageID, uint64_t destinationID, const T& arguments);
+ static void setInvalidMessageCallback(void (*)(uint32_t));
+
private:
explicit WebProcessProxy(PassRefPtr<WebContext>);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes