Modified: trunk/Source/WebCore/ChangeLog (227076 => 227077)
--- trunk/Source/WebCore/ChangeLog 2018-01-17 19:16:23 UTC (rev 227076)
+++ trunk/Source/WebCore/ChangeLog 2018-01-17 19:35:21 UTC (rev 227077)
@@ -1,3 +1,18 @@
+2018-01-17 Per Arne Vollan <pvol...@apple.com>
+
+ [Win] Use switch when converting from ResourceRequestCachePolicy to platform cache policy.
+ https://bugs.webkit.org/show_bug.cgi?id=181686
+
+ Reviewed by Alex Christensen.
+
+ No new tests, covered by existing tests.
+
+ A switch will make the function easier on the eyes. Also, use the function in places where the ResourceRequestCachePolicy
+ is just casted to a platform cache policy.
+
+ * platform/network/cf/ResourceRequestCFNet.cpp:
+ (WebCore::toPlatformRequestCachePolicy):
+
2018-01-17 John Wilander <wilan...@apple.com>
Resource Load Statistics: Block cookies for prevalent resources without user interaction
Modified: trunk/Source/WebCore/platform/network/cf/ResourceRequestCFNet.cpp (227076 => 227077)
--- trunk/Source/WebCore/platform/network/cf/ResourceRequestCFNet.cpp 2018-01-17 19:16:23 UTC (rev 227076)
+++ trunk/Source/WebCore/platform/network/cf/ResourceRequestCFNet.cpp 2018-01-17 19:35:21 UTC (rev 227077)
@@ -132,6 +132,25 @@
CFURLRequestSetHTTPHeaderFieldValue(request, header.key.createCFString().get(), header.value.createCFString().get());
}
+static inline CFURLRequestCachePolicy toPlatformRequestCachePolicy(ResourceRequestCachePolicy policy)
+{
+ switch (policy) {
+ case UseProtocolCachePolicy:
+ return kCFURLRequestCachePolicyProtocolDefault;
+ case ReturnCacheDataElseLoad:
+ return kCFURLRequestCachePolicyReturnCacheDataElseLoad;
+ case ReturnCacheDataDontLoad:
+ return kCFURLRequestCachePolicyReturnCacheDataDontLoad;
+ case ReloadIgnoringCacheData:
+ case DoNotUseAnyCache:
+ case RefreshAnyCacheData:
+ return kCFURLRequestCachePolicyReloadIgnoringCache;
+ }
+
+ ASSERT_NOT_REACHED();
+ return kCFURLRequestCachePolicyReloadIgnoringCache;
+}
+
void ResourceRequest::doUpdatePlatformRequest()
{
CFMutableURLRequestRef cfRequest;
@@ -143,10 +162,10 @@
cfRequest = CFURLRequestCreateMutableCopy(0, m_cfRequest.get());
CFURLRequestSetURL(cfRequest, url.get());
CFURLRequestSetMainDocumentURL(cfRequest, firstPartyForCookies.get());
- CFURLRequestSetCachePolicy(cfRequest, (CFURLRequestCachePolicy)cachePolicy());
+ CFURLRequestSetCachePolicy(cfRequest, toPlatformRequestCachePolicy(cachePolicy()));
CFURLRequestSetTimeoutInterval(cfRequest, timeoutInterval);
} else
- cfRequest = CFURLRequestCreateMutable(0, url.get(), (CFURLRequestCachePolicy)cachePolicy(), timeoutInterval, firstPartyForCookies.get());
+ cfRequest = CFURLRequestCreateMutable(0, url.get(), toPlatformRequestCachePolicy(cachePolicy()), timeoutInterval, firstPartyForCookies.get());
CFURLRequestSetHTTPRequestMethod(cfRequest, httpMethod().createCFString().get());
@@ -189,12 +208,6 @@
#endif
}
-// FIXME: We should use a switch based on ResourceRequestCachePolicy parameter
-static inline CFURLRequestCachePolicy toPlatformRequestCachePolicy(ResourceRequestCachePolicy policy)
-{
- return static_cast<CFURLRequestCachePolicy>((policy <= ReturnCacheDataDontLoad) ? policy : ReloadIgnoringCacheData);
-}
-
void ResourceRequest::doUpdatePlatformHTTPBody()
{
CFMutableURLRequestRef cfRequest;
@@ -209,7 +222,7 @@
CFURLRequestSetCachePolicy(cfRequest, toPlatformRequestCachePolicy(cachePolicy()));
CFURLRequestSetTimeoutInterval(cfRequest, timeoutInterval);
} else
- cfRequest = CFURLRequestCreateMutable(0, url.get(), (CFURLRequestCachePolicy)cachePolicy(), timeoutInterval, firstPartyForCookies.get());
+ cfRequest = CFURLRequestCreateMutable(0, url.get(), toPlatformRequestCachePolicy(cachePolicy()), timeoutInterval, firstPartyForCookies.get());
FormData* formData = httpBody();
if (formData && !formData->isEmpty())