Chromium Code Reviews| 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: |