Diff
Modified: trunk/Source/WebKit2/ChangeLog (149146 => 149147)
--- trunk/Source/WebKit2/ChangeLog 2013-04-25 22:17:34 UTC (rev 149146)
+++ trunk/Source/WebKit2/ChangeLog 2013-04-25 22:23:39 UTC (rev 149147)
@@ -1,3 +1,25 @@
+2013-04-25 Anders Carlsson <ander...@apple.com>
+
+ Rename DecidePolicyForResponse message to DecidePolicyForResponseSync
+ https://bugs.webkit.org/show_bug.cgi?id=115207
+
+ Reviewed by Beth Dakin.
+
+ In preparation for adding a new async DecidePolicyForResponse message,
+ rename the current one to DecidePolicyForResponseSync. Also split out the async part
+ into a separate WebPageProxy::decidePolicyForResponse member function.
+
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::WebPageProxy):
+ (WebKit::WebPageProxy::receivedPolicyDecision):
+ (WebKit::WebPageProxy::decidePolicyForResponse):
+ (WebKit::WebPageProxy::decidePolicyForResponseSync):
+ * UIProcess/WebPageProxy.h:
+ (WebPageProxy):
+ * UIProcess/WebPageProxy.messages.in:
+ * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+ (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
+
2013-04-25 Joseph Pecoraro <pecor...@apple.com>
Web Inspector: ConsoleMessage should include line and column number where possible
Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (149146 => 149147)
--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp 2013-04-25 22:17:34 UTC (rev 149146)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp 2013-04-25 22:23:39 UTC (rev 149147)
@@ -268,7 +268,7 @@
, m_canRunModal(false)
, m_isInPrintingMode(false)
, m_isPerformingDOMPrintOperation(false)
- , m_inDecidePolicyForResponse(false)
+ , m_inDecidePolicyForResponseSync(false)
, m_decidePolicyForResponseRequest(0)
, m_syncMimeTypePolicyActionIsValid(false)
, m_syncMimeTypePolicyAction(PolicyUse)
@@ -1449,7 +1449,7 @@
#if ENABLE(NETWORK_PROCESS)
// FIXME (NetworkProcess): Instead of canceling the load and then starting a separate download, we should
// just convert the connection to a download connection. See <rdar://problem/12890184>.
- if (m_inDecidePolicyForResponse && action == PolicyDownload && m_process->context()->usesNetworkProcess()) {
+ if (m_inDecidePolicyForResponseSync && action == PolicyDownload && m_process->context()->usesNetworkProcess()) {
action = ""
m_process->context()->download(this, *m_decidePolicyForResponseRequest);
@@ -1472,7 +1472,7 @@
// If we received a policy decision while in decidePolicyForResponse the decision will
// be sent back to the web process by decidePolicyForResponse.
- if (m_inDecidePolicyForResponse) {
+ if (m_inDecidePolicyForResponseSync) {
m_syncMimeTypePolicyActionIsValid = true;
m_syncMimeTypePolicyAction = action;
m_syncMimeTypePolicyDownloadID = downloadID;
@@ -2496,7 +2496,7 @@
listener->use();
}
-void WebPageProxy::decidePolicyForResponse(uint64_t frameID, const ResourceResponse& response, const ResourceRequest& request, uint64_t listenerID, CoreIPC::MessageDecoder& decoder, bool& receivedPolicyAction, uint64_t& policyAction, uint64_t& downloadID)
+void WebPageProxy::decidePolicyForResponse(uint64_t frameID, const ResourceResponse& response, const ResourceRequest& request, uint64_t listenerID, CoreIPC::MessageDecoder& decoder)
{
RefPtr<APIObject> userData;
WebContextUserMessageDecoder messageDecoder(userData, m_process.get());
@@ -2507,19 +2507,24 @@
MESSAGE_CHECK(frame);
MESSAGE_CHECK_URL(request.url());
MESSAGE_CHECK_URL(response.url());
-
+
RefPtr<WebFramePolicyListenerProxy> listener = frame->setUpPolicyListenerProxy(listenerID);
- ASSERT(!m_inDecidePolicyForResponse);
+ if (!m_policyClient.decidePolicyForResponse(this, frame, response, request, listener.get(), userData.get()))
+ listener->use();
+}
- m_inDecidePolicyForResponse = true;
+void WebPageProxy::decidePolicyForResponseSync(uint64_t frameID, const ResourceResponse& response, const ResourceRequest& request, uint64_t listenerID, CoreIPC::MessageDecoder& decoder, bool& receivedPolicyAction, uint64_t& policyAction, uint64_t& downloadID)
+{
+ ASSERT(!m_inDecidePolicyForResponseSync);
+
+ m_inDecidePolicyForResponseSync = true;
m_decidePolicyForResponseRequest = &request;
m_syncMimeTypePolicyActionIsValid = false;
- if (!m_policyClient.decidePolicyForResponse(this, frame, response, request, listener.get(), userData.get()))
- listener->use();
+ decidePolicyForResponse(frameID, response, request, listenerID, decoder);
- m_inDecidePolicyForResponse = false;
+ m_inDecidePolicyForResponseSync = false;
m_decidePolicyForResponseRequest = 0;
// Check if we received a policy decision already. If we did, we can just pass it back.
Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.h (149146 => 149147)
--- trunk/Source/WebKit2/UIProcess/WebPageProxy.h 2013-04-25 22:17:34 UTC (rev 149146)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.h 2013-04-25 22:23:39 UTC (rev 149147)
@@ -829,7 +829,8 @@
void decidePolicyForNavigationAction(uint64_t frameID, uint32_t navigationType, uint32_t modifiers, int32_t mouseButton, const WebCore::ResourceRequest&, uint64_t listenerID, CoreIPC::MessageDecoder&, bool& receivedPolicyAction, uint64_t& policyAction, uint64_t& downloadID);
void decidePolicyForNewWindowAction(uint64_t frameID, uint32_t navigationType, uint32_t modifiers, int32_t mouseButton, const WebCore::ResourceRequest&, const String& frameName, uint64_t listenerID, CoreIPC::MessageDecoder&);
- void decidePolicyForResponse(uint64_t frameID, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, uint64_t listenerID, CoreIPC::MessageDecoder&, bool& receivedPolicyAction, uint64_t& policyAction, uint64_t& downloadID);
+ void decidePolicyForResponse(uint64_t frameID, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, uint64_t listenerID, CoreIPC::MessageDecoder&);
+ void decidePolicyForResponseSync(uint64_t frameID, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, uint64_t listenerID, CoreIPC::MessageDecoder&, bool& receivedPolicyAction, uint64_t& policyAction, uint64_t& downloadID);
void unableToImplementPolicy(uint64_t frameID, const WebCore::ResourceError&, CoreIPC::MessageDecoder&);
void willSubmitForm(uint64_t frameID, uint64_t sourceFrameID, const Vector<std::pair<String, String> >& textFieldValues, uint64_t listenerID, CoreIPC::MessageDecoder&);
@@ -1175,7 +1176,7 @@
bool m_isInPrintingMode;
bool m_isPerformingDOMPrintOperation;
- bool m_inDecidePolicyForResponse;
+ bool m_inDecidePolicyForResponseSync;
const WebCore::ResourceRequest* m_decidePolicyForResponseRequest;
bool m_syncMimeTypePolicyActionIsValid;
WebCore::PolicyAction m_syncMimeTypePolicyAction;
Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in (149146 => 149147)
--- trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in 2013-04-25 22:17:34 UTC (rev 149146)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in 2013-04-25 22:23:39 UTC (rev 149147)
@@ -99,7 +99,7 @@
#endif
# Policy messages
- DecidePolicyForResponse(uint64_t frameID, WebCore::ResourceResponse response, WebCore::ResourceRequest request, uint64_t listenerID, WebKit::InjectedBundleUserMessageEncoder userData) -> (bool receivedPolicyAction, uint64_t policyAction, uint64_t downloadID) Variadic
+ DecidePolicyForResponseSync(uint64_t frameID, WebCore::ResourceResponse response, WebCore::ResourceRequest request, uint64_t listenerID, WebKit::InjectedBundleUserMessageEncoder userData) -> (bool receivedPolicyAction, uint64_t policyAction, uint64_t downloadID) Variadic
DecidePolicyForNavigationAction(uint64_t frameID, uint32_t navigationType, uint32_t modifiers, int32_t mouseButton, WebCore::ResourceRequest request, uint64_t listenerID, WebKit::InjectedBundleUserMessageEncoder userData) -> (bool receivedPolicyAction, uint64_t policyAction, uint64_t downloadID) Variadic
DecidePolicyForNewWindowAction(uint64_t frameID, uint32_t navigationType, uint32_t modifiers, int32_t mouseButton, WebCore::ResourceRequest request, WTF::String frameName, uint64_t listenerID, WebKit::InjectedBundleUserMessageEncoder userData) Variadic
UnableToImplementPolicy(uint64_t frameID, WebCore::ResourceError error, WebKit::InjectedBundleUserMessageEncoder userData) Variadic
Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp (149146 => 149147)
--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp 2013-04-25 22:17:34 UTC (rev 149146)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp 2013-04-25 22:23:39 UTC (rev 149147)
@@ -638,7 +638,7 @@
uint64_t downloadID;
// Notify the UIProcess.
- if (!webPage->sendSync(Messages::WebPageProxy::DecidePolicyForResponse(m_frame->frameID(), response, request, listenerID, InjectedBundleUserMessageEncoder(userData.get())), Messages::WebPageProxy::DecidePolicyForResponse::Reply(receivedPolicyAction, policyAction, downloadID)))
+ if (!webPage->sendSync(Messages::WebPageProxy::DecidePolicyForResponseSync(m_frame->frameID(), response, request, listenerID, InjectedBundleUserMessageEncoder(userData.get())), Messages::WebPageProxy::DecidePolicyForResponseSync::Reply(receivedPolicyAction, policyAction, downloadID)))
return;
// We call this synchronously because CFNetwork can only convert a loading connection to a download from its didReceiveResponse callback.