| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index 00f17b47be2c3ea857ea9936a7d166eba36af23f..b731ebec3158738348d7aaa111932ea04961cc3b 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -878,6 +878,21 @@ double ConvertToBlinkTime(const base::TimeTicks& time_ticks) {
|
| return (time_ticks - base::TimeTicks()).InSecondsF();
|
| }
|
|
|
| +std::vector<FeaturePolicyParsedWhitelist> ToFeaturePolicyParsedWhitelist(
|
| + const blink::WebParsedFeaturePolicy& web_parsed_whitelists) {
|
| + std::vector<FeaturePolicyParsedWhitelist> result;
|
| + for (const blink::WebFeaturePolicy::ParsedWhitelist& web_whitelist :
|
| + web_parsed_whitelists) {
|
| + FeaturePolicyParsedWhitelist whitelist;
|
| + whitelist.feature_name = web_whitelist.featureName.utf8();
|
| + whitelist.matches_all_origins = web_whitelist.matchesAllOrigins;
|
| + for (const blink::WebSecurityOrigin& web_origin : web_whitelist.origins)
|
| + whitelist.origins.push_back(web_origin);
|
| + result.push_back(whitelist);
|
| + }
|
| + return result;
|
| +}
|
| +
|
| } // namespace
|
|
|
| struct RenderFrameImpl::PendingFileChooser {
|
| @@ -3132,9 +3147,9 @@ void RenderFrameImpl::didChangeSandboxFlags(blink::WebFrame* child_frame,
|
| }
|
|
|
| void RenderFrameImpl::didSetFeaturePolicyHeader(
|
| - const blink::WebString& header_value) {
|
| - Send(new FrameHostMsg_DidSetFeaturePolicyHeader(routing_id_,
|
| - header_value.utf8()));
|
| + const blink::WebParsedFeaturePolicy& parsed_header) {
|
| + Send(new FrameHostMsg_DidSetFeaturePolicyHeader(
|
| + routing_id_, ToFeaturePolicyParsedWhitelist(parsed_header)));
|
| }
|
|
|
| void RenderFrameImpl::didAddContentSecurityPolicy(
|
|
|