Chromium Code Reviews| Index: Source/core/fetch/ResourceFetcher.cpp |
| diff --git a/Source/core/fetch/ResourceFetcher.cpp b/Source/core/fetch/ResourceFetcher.cpp |
| index 1cfffa536a7d44488d868fecbb8c56334b4a1ed8..e2182d3cebd4f12b44898264d7f0026a80463b08 100644 |
| --- a/Source/core/fetch/ResourceFetcher.cpp |
| +++ b/Source/core/fetch/ResourceFetcher.cpp |
| @@ -87,6 +87,7 @@ static Resource* createResource(Resource::Type type, const ResourceRequest& requ |
| case Resource::MainResource: |
| case Resource::Raw: |
| case Resource::TextTrack: |
| + case Resource::Media: |
| return new RawResource(request, type); |
| case Resource::XSLStyleSheet: |
| return new XSLStyleSheetResource(request); |
| @@ -124,6 +125,8 @@ static ResourceLoadPriority loadPriority(Resource::Type type, const FetchRequest |
| // We'll default images to VeryLow, and promote whatever is visible. This improves |
| // speed-index by ~5% on average, ~14% at the 99th percentile. |
| return ResourceLoadPriorityVeryLow; |
| + case Resource::Media: |
| + return ResourceLoadPriorityVeryLow; |
| case Resource::XSLStyleSheet: |
| ASSERT(RuntimeEnabledFeatures::xsltEnabled()); |
| return ResourceLoadPriorityHigh; |
| @@ -209,6 +212,8 @@ static ResourceRequest::TargetType requestTargetType(const ResourceFetcher* fetc |
| return ResourceRequest::TargetIsTextTrack; |
| case Resource::SVGDocument: |
| return ResourceRequest::TargetIsImage; |
| + case Resource::Media: |
| + return ResourceRequest::TargetIsMedia; |
| } |
| ASSERT_NOT_REACHED(); |
| return ResourceRequest::TargetIsSubresource; |
| @@ -371,6 +376,17 @@ ResourcePtr<RawResource> ResourceFetcher::fetchMainResource(FetchRequest& reques |
| return toRawResource(requestResource(Resource::MainResource, request)); |
| } |
| +ResourcePtr<RawResource> ResourceFetcher::fetchMedia(FetchRequest& request) |
| +{ |
| + return toRawResource(requestResource(Resource::Media, request).get()); |
| +} |
| + |
| +ResourcePtr<RawResource> ResourceFetcher::fetchTextTrack(FetchRequest& request) |
| +{ |
| + return toRawResource(requestResource(Resource::TextTrack, request).get()); |
| +} |
| + |
| + |
|
apavlov
2013/12/19 09:31:52
extra blank line
pwnall-personal
2013/12/24 17:52:18
Done.
|
| bool ResourceFetcher::checkInsecureContent(Resource::Type type, const KURL& url, MixedContentBlockingTreatment treatment) const |
| { |
| if (treatment == TreatAsDefaultForType) { |
| @@ -391,6 +407,7 @@ bool ResourceFetcher::checkInsecureContent(Resource::Type type, const KURL& url, |
| case Resource::Raw: |
| case Resource::Image: |
| case Resource::Font: |
| + case Resource::Media: |
| // These resources can corrupt only the frame's pixels. |
| treatment = TreatAsPassiveContent; |
| break; |
| @@ -454,6 +471,7 @@ bool ResourceFetcher::canRequest(Resource::Type type, const KURL& url, const Res |
| case Resource::TextTrack: |
| case Resource::Shader: |
| case Resource::ImportResource: |
| + case Resource::Media: |
| // 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)) { |
| @@ -511,6 +529,7 @@ bool ResourceFetcher::canRequest(Resource::Type type, const KURL& url, const Res |
| case Resource::LinkPrefetch: |
| case Resource::LinkSubresource: |
| break; |
| + case Resource::Media: |
| case Resource::TextTrack: |
| if (!shouldBypassMainWorldContentSecurityPolicy && !m_document->contentSecurityPolicy()->allowMediaFromSource(url)) |
| return false; |