Title: [176626] trunk/Source
- Revision
- 176626
- Author
- [email protected]
- Date
- 2014-12-01 20:28:25 -0800 (Mon, 01 Dec 2014)
Log Message
Add cancelable version of willSendRequest
https://bugs.webkit.org/show_bug.cgi?id=138987
Reviewed by Anders Carlsson.
Source/WebCore:
Covered by existing tests.
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequest):
* loader/ResourceLoader.h:
Source/WebKit2:
* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::willSendRequest):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (176625 => 176626)
--- trunk/Source/WebCore/ChangeLog 2014-12-02 04:09:24 UTC (rev 176625)
+++ trunk/Source/WebCore/ChangeLog 2014-12-02 04:28:25 UTC (rev 176626)
@@ -1,3 +1,16 @@
+2014-11-20 Jeffrey Pfau <[email protected]>
+
+ Add cancelable version of willSendRequest
+ https://bugs.webkit.org/show_bug.cgi?id=138987
+
+ Reviewed by Anders Carlsson.
+
+ Covered by existing tests.
+
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::willSendRequest):
+ * loader/ResourceLoader.h:
+
2014-12-01 Benjamin Poulain <[email protected]>
Add the dynamic specificity of the selector list argument when matching :nth-child() and :nth-last-child()
Modified: trunk/Source/WebCore/loader/ResourceLoader.cpp (176625 => 176626)
--- trunk/Source/WebCore/loader/ResourceLoader.cpp 2014-12-02 04:09:24 UTC (rev 176625)
+++ trunk/Source/WebCore/loader/ResourceLoader.cpp 2014-12-02 04:28:25 UTC (rev 176626)
@@ -286,6 +286,12 @@
frameLoader()->client().dispatchDidReceiveServerRedirectForProvisionalLoad();
}
+void ResourceLoader::willSendRequest(ResourceRequest&& request, const ResourceResponse& redirectResponse, std::function<void(ResourceRequest&)> callback)
+{
+ willSendRequest(request, redirectResponse);
+ callback(request);
+}
+
void ResourceLoader::didSendData(unsigned long long, unsigned long long)
{
}
Modified: trunk/Source/WebCore/loader/ResourceLoader.h (176625 => 176626)
--- trunk/Source/WebCore/loader/ResourceLoader.h 2014-12-02 04:09:24 UTC (rev 176625)
+++ trunk/Source/WebCore/loader/ResourceLoader.h 2014-12-02 04:28:25 UTC (rev 176626)
@@ -91,8 +91,9 @@
void clearResourceData();
virtual bool isSubresourceLoader();
-
+
virtual void willSendRequest(ResourceRequest&, const ResourceResponse& redirectResponse);
+ virtual void willSendRequest(ResourceRequest&&, const ResourceResponse& redirectResponse, std::function<void(ResourceRequest&)> callback);
virtual void didSendData(unsigned long long bytesSent, unsigned long long totalBytesToBeSent);
virtual void didReceiveResponse(const ResourceResponse&);
virtual void didReceiveData(const char*, unsigned, long long encodedDataLength, DataPayloadType);
Modified: trunk/Source/WebKit2/ChangeLog (176625 => 176626)
--- trunk/Source/WebKit2/ChangeLog 2014-12-02 04:09:24 UTC (rev 176625)
+++ trunk/Source/WebKit2/ChangeLog 2014-12-02 04:28:25 UTC (rev 176626)
@@ -1,3 +1,13 @@
+2014-11-20 Jeffrey Pfau <[email protected]>
+
+ Add cancelable version of willSendRequest
+ https://bugs.webkit.org/show_bug.cgi?id=138987
+
+ Reviewed by Anders Carlsson.
+
+ * WebProcess/Network/WebResourceLoader.cpp:
+ (WebKit::WebResourceLoader::willSendRequest):
+
2014-12-01 Conrad Shultz <[email protected]>
Clients need a way to explicitly set the title of a page preview
Modified: trunk/Source/WebKit2/WebProcess/Network/WebResourceLoader.cpp (176625 => 176626)
--- trunk/Source/WebKit2/WebProcess/Network/WebResourceLoader.cpp 2014-12-02 04:09:24 UTC (rev 176625)
+++ trunk/Source/WebKit2/WebProcess/Network/WebResourceLoader.cpp 2014-12-02 04:28:25 UTC (rev 176626)
@@ -83,18 +83,21 @@
{
LOG(Network, "(WebProcess) WebResourceLoader::willSendRequest to '%s'", proposedRequest.url().string().utf8().data());
- Ref<WebResourceLoader> protect(*this);
+ RefPtr<WebResourceLoader> protect(this);
ResourceRequest newRequest = proposedRequest;
if (m_coreLoader->documentLoader()->applicationCacheHost()->maybeLoadFallbackForRedirect(m_coreLoader.get(), newRequest, redirectResponse))
return;
// FIXME: Do we need to update NetworkResourceLoader clientCredentialPolicy in case loader policy is DoNotAskClientForCrossOriginCredentials?
- m_coreLoader->willSendRequest(newRequest, redirectResponse);
-
- if (!m_coreLoader)
- return;
-
- send(Messages::NetworkResourceLoader::ContinueWillSendRequest(newRequest));
+ m_coreLoader->willSendRequest(WTF::move(newRequest), redirectResponse, [protect](ResourceRequest& request) {
+ if (!protect->m_coreLoader)
+ return;
+
+ if (!request.isNull())
+ protect->send(Messages::NetworkResourceLoader::ContinueWillSendRequest(request));
+ else
+ protect->m_coreLoader->cancel();
+ });
}
void WebResourceLoader::didSendData(uint64_t bytesSent, uint64_t totalBytesToBeSent)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes