Index: Source/core/fetch/ResourceFetcher.cpp |
diff --git a/Source/core/fetch/ResourceFetcher.cpp b/Source/core/fetch/ResourceFetcher.cpp |
index 2c18ad2f1539d303d74975e2e1d590c71a9e4eec..33af78a21ff45418bfab67afdcfe4105ab2c7126 100644 |
--- a/Source/core/fetch/ResourceFetcher.cpp |
+++ b/Source/core/fetch/ResourceFetcher.cpp |
@@ -96,15 +96,14 @@ static Resource* createResource(Resource::Type type, const ResourceRequest& requ |
case Resource::Raw: |
case Resource::TextTrack: |
case Resource::Media: |
+ case Resource::ImportResource: |
return new RawResource(request, type); |
case Resource::XSLStyleSheet: |
return new XSLStyleSheetResource(request, charset); |
case Resource::LinkPrefetch: |
- return new Resource(request, Resource::LinkPrefetch); |
case Resource::LinkSubresource: |
- return new Resource(request, Resource::LinkSubresource); |
- case Resource::ImportResource: |
- return new RawResource(request, type); |
+ case Resource::Manifest: |
+ return new Resource(request, type); |
} |
ASSERT_NOT_REACHED(); |
@@ -126,6 +125,7 @@ static ResourceLoadPriority loadPriority(Resource::Type type, const FetchRequest |
case Resource::Script: |
case Resource::Font: |
case Resource::ImportResource: |
+ case Resource::Manifest: |
Nate Chapin
2014/08/25 20:43:11
Is there any case loading a manifest will block th
mlamouri (slow - plz ping)
2014/08/26 17:25:22
For the moment, we expect to load the manifest onl
|
return ResourceLoadPriorityMedium; |
case Resource::Image: |
// We'll default images to VeryLow, and promote whatever is visible. This improves |
@@ -218,6 +218,8 @@ static WebURLRequest::RequestContext requestContextFromType(const ResourceFetche |
return WebURLRequest::RequestContextPrefetch; |
case Resource::LinkSubresource: |
return WebURLRequest::RequestContextSubresource; |
+ case Resource::Manifest: |
+ return WebURLRequest::RequestContextManifest; |
case Resource::TextTrack: |
return WebURLRequest::RequestContextTrack; |
case Resource::SVGDocument: |
@@ -413,6 +415,13 @@ ResourcePtr<RawResource> ResourceFetcher::fetchTextTrack(FetchRequest& request) |
return toRawResource(requestResource(Resource::TextTrack, request)); |
} |
+ResourcePtr<Resource> ResourceFetcher::fetchManifest(FetchRequest& request) |
+{ |
+ ASSERT(request.resourceRequest().frameType() == WebURLRequest::FrameTypeNone); |
+ request.mutableResourceRequest().setRequestContext(WebURLRequest::RequestContextManifest); |
+ return requestResource(Resource::Manifest, request); |
+} |
+ |
void ResourceFetcher::preCacheSubstituteDataForMainResource(const FetchRequest& request, const SubstituteData& substituteData) |
{ |
const KURL& url = request.url(); |
@@ -447,6 +456,7 @@ bool ResourceFetcher::checkInsecureContent(Resource::Type type, const KURL& url, |
break; |
case Resource::Font: |
+ case Resource::Manifest: |
case Resource::TextTrack: |
// These resources are passive, but mixed usage is low enough that we |
// can block them in a mixed context. |
@@ -530,6 +540,7 @@ bool ResourceFetcher::canRequest(Resource::Type type, const KURL& url, const Res |
case Resource::TextTrack: |
case Resource::ImportResource: |
case Resource::Media: |
+ case Resource::Manifest: |
// By default these types of resources can be loaded from any origin. |
// FIXME: Are we sure about Resource::Font? |
if (originRestriction == FetchRequest::RestrictToSameOrigin && !securityOrigin->canRequest(url)) { |
@@ -599,6 +610,7 @@ bool ResourceFetcher::canRequest(Resource::Type type, const KURL& url, const Res |
case Resource::Raw: |
case Resource::LinkPrefetch: |
case Resource::LinkSubresource: |
+ case Resource::Manifest: |
break; |
case Resource::Media: |
case Resource::TextTrack: |