Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index 4167222969def20c760b86eb6e739add6fd9986a..4da888b607b40f122b5d30812cc839401bf54039 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -4043,8 +4043,11 @@ void RenderFrameImpl::willSendRequest( |
provider_id = provider->provider_id(); |
// Explicitly set the SkipServiceWorker flag here if the renderer process |
// hasn't received SetControllerServiceWorker message. |
- if (!provider->IsControlledByServiceWorker()) |
- request.setSkipServiceWorker(true); |
+ if (!provider->IsControlledByServiceWorker() && |
+ request.skipServiceWorker() != |
+ blink::WebURLRequest::SkipServiceWorker::All) |
+ request.setSkipServiceWorker( |
+ blink::WebURLRequest::SkipServiceWorker::Controlling); |
} |
WebFrame* parent = frame->parent(); |
@@ -5845,7 +5848,8 @@ void RenderFrameImpl::BeginNavigation(blink::WebURLRequest* request, |
BeginNavigationParams(GetWebURLRequestHeaders(*request), |
GetLoadFlagsForWebURLRequest(*request), |
request->hasUserGesture(), |
- request->skipServiceWorker(), |
+ request->skipServiceWorker() != |
+ blink::WebURLRequest::SkipServiceWorker::None, |
GetRequestContextTypeForWebURLRequest(*request)))); |
} |