| Index: third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp
|
| diff --git a/third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp b/third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp
|
| index c4ab711b0903d38ea0d8121df4aa7cffac881516..c517ce509347d4cb9900c1ff0ff98c063d30efab 100644
|
| --- a/third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp
|
| +++ b/third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp
|
| @@ -81,7 +81,6 @@ enum SriResourceIntegrityMismatchEvent {
|
| DEFINE_SINGLE_RESOURCE_HISTOGRAM(prefix, Font) \
|
| DEFINE_SINGLE_RESOURCE_HISTOGRAM(prefix, Image) \
|
| DEFINE_SINGLE_RESOURCE_HISTOGRAM(prefix, ImportResource) \
|
| - DEFINE_SINGLE_RESOURCE_HISTOGRAM(prefix, LinkPrefetch) \
|
| DEFINE_SINGLE_RESOURCE_HISTOGRAM(prefix, LinkPreload) \
|
| DEFINE_SINGLE_RESOURCE_HISTOGRAM(prefix, MainResource) \
|
| DEFINE_SINGLE_RESOURCE_HISTOGRAM(prefix, Manifest) \
|
| @@ -126,8 +125,6 @@ static ResourceLoadPriority typeToPriority(Resource::Type type)
|
| case Resource::SVGDocument:
|
| // Also async scripts (set explicitly in loadPriority)
|
| return ResourceLoadPriorityLow;
|
| - case Resource::LinkPrefetch:
|
| - return ResourceLoadPriorityVeryLow;
|
| }
|
|
|
| ASSERT_NOT_REACHED();
|
| @@ -137,6 +134,8 @@ static ResourceLoadPriority typeToPriority(Resource::Type type)
|
| ResourceLoadPriority ResourceFetcher::computeLoadPriority(Resource::Type type, const FetchRequest& request, ResourcePriority::VisibilityStatus visibility)
|
| {
|
| ResourceLoadPriority priority = typeToPriority(type);
|
| + if (request.isPrefetch())
|
| + priority = ResourceLoadPriorityVeryLow;
|
|
|
| // Visible resources (images in practice) get a boost to High priority.
|
| if (visibility == ResourcePriority::Visible)
|
| @@ -198,8 +197,6 @@ static WebURLRequest::RequestContext requestContextFromType(bool isMainFrame, Re
|
| return WebURLRequest::RequestContextSubresource;
|
| case Resource::ImportResource:
|
| return WebURLRequest::RequestContextImport;
|
| - case Resource::LinkPrefetch:
|
| - return WebURLRequest::RequestContextPrefetch;
|
| case Resource::LinkPreload:
|
| return WebURLRequest::RequestContextSubresource;
|
| case Resource::TextTrack:
|
| @@ -428,6 +425,10 @@ Resource* ResourceFetcher::requestResource(FetchRequest& request, const Resource
|
|
|
| unsigned long identifier = createUniqueIdentifier();
|
| request.mutableResourceRequest().setPriority(computeLoadPriority(factory.type(), request, ResourcePriority::NotVisible));
|
| + if (request.isPrefetch()) {
|
| + request.mutableResourceRequest().setHTTPHeaderField(HTTPNames::Purpose, "prefetch");
|
| + request.mutableResourceRequest().setRequestContext(WebURLRequest::RequestContextPrefetch);
|
| + }
|
| initializeResourceRequest(request.mutableResourceRequest(), factory.type(), request.defer());
|
| context().willStartLoadingResource(identifier, request.mutableResourceRequest(), factory.type());
|
| if (!request.url().isValid())
|
| @@ -551,8 +552,6 @@ void ResourceFetcher::initializeResourceRequest(ResourceRequest& request, Resour
|
| request.setCachePolicy(context().resourceRequestCachePolicy(request, type, defer));
|
| if (request.requestContext() == WebURLRequest::RequestContextUnspecified)
|
| determineRequestContext(request, type);
|
| - if (type == Resource::LinkPrefetch)
|
| - request.setHTTPHeaderField(HTTPNames::Purpose, "prefetch");
|
|
|
| context().addAdditionalRequestHeaders(request, (type == Resource::MainResource) ? FetchMainResource : FetchSubresource);
|
| }
|
|
|