Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: content/renderer/render_frame_impl.cc

Issue 2105503002: Skip foreign fetch when the skipServiceWorker flag is set on a request. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix resource loading Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/render_frame_impl.h" 5 #include "content/renderer/render_frame_impl.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 4025 matching lines...) Expand 10 before | Expand all | Expand 10 after
4036 provider_id = provider->provider_id(); 4036 provider_id = provider->provider_id();
4037 } 4037 }
4038 } else if (frame->dataSource()) { 4038 } else if (frame->dataSource()) {
4039 ServiceWorkerNetworkProvider* provider = 4039 ServiceWorkerNetworkProvider* provider =
4040 ServiceWorkerNetworkProvider::FromDocumentState( 4040 ServiceWorkerNetworkProvider::FromDocumentState(
4041 DocumentState::FromDataSource(frame->dataSource())); 4041 DocumentState::FromDataSource(frame->dataSource()));
4042 DCHECK(provider); 4042 DCHECK(provider);
4043 provider_id = provider->provider_id(); 4043 provider_id = provider->provider_id();
4044 // Explicitly set the SkipServiceWorker flag here if the renderer process 4044 // Explicitly set the SkipServiceWorker flag here if the renderer process
4045 // hasn't received SetControllerServiceWorker message. 4045 // hasn't received SetControllerServiceWorker message.
4046 if (!provider->IsControlledByServiceWorker()) 4046 if (!provider->IsControlledByServiceWorker() &&
4047 request.setSkipServiceWorker(true); 4047 request.skipServiceWorker() !=
4048 blink::WebURLRequest::SkipServiceWorker::All)
4049 request.setSkipServiceWorker(
4050 blink::WebURLRequest::SkipServiceWorker::Controlling);
4048 } 4051 }
4049 4052
4050 WebFrame* parent = frame->parent(); 4053 WebFrame* parent = frame->parent();
4051 int parent_routing_id = parent ? GetRoutingIdForFrameOrProxy(parent) : -1; 4054 int parent_routing_id = parent ? GetRoutingIdForFrameOrProxy(parent) : -1;
4052 4055
4053 RequestExtraData* extra_data = new RequestExtraData(); 4056 RequestExtraData* extra_data = new RequestExtraData();
4054 extra_data->set_visibility_state(render_view_->visibilityState()); 4057 extra_data->set_visibility_state(render_view_->visibilityState());
4055 extra_data->set_custom_user_agent(custom_user_agent); 4058 extra_data->set_custom_user_agent(custom_user_agent);
4056 extra_data->set_requested_with(requested_with); 4059 extra_data->set_requested_with(requested_with);
4057 extra_data->set_render_frame_id(routing_id_); 4060 extra_data->set_render_frame_id(routing_id_);
(...skipping 1780 matching lines...) Expand 10 before | Expand all | Expand 10 after
5838 DCHECK(!frame_->parent() || 5841 DCHECK(!frame_->parent() ||
5839 GetRequestContextFrameTypeForWebURLRequest(*request) == 5842 GetRequestContextFrameTypeForWebURLRequest(*request) ==
5840 REQUEST_CONTEXT_FRAME_TYPE_NESTED); 5843 REQUEST_CONTEXT_FRAME_TYPE_NESTED);
5841 5844
5842 Send(new FrameHostMsg_BeginNavigation( 5845 Send(new FrameHostMsg_BeginNavigation(
5843 routing_id_, 5846 routing_id_,
5844 MakeCommonNavigationParams(request, should_replace_current_entry), 5847 MakeCommonNavigationParams(request, should_replace_current_entry),
5845 BeginNavigationParams(GetWebURLRequestHeaders(*request), 5848 BeginNavigationParams(GetWebURLRequestHeaders(*request),
5846 GetLoadFlagsForWebURLRequest(*request), 5849 GetLoadFlagsForWebURLRequest(*request),
5847 request->hasUserGesture(), 5850 request->hasUserGesture(),
5848 request->skipServiceWorker(), 5851 request->skipServiceWorker() !=
5852 blink::WebURLRequest::SkipServiceWorker::None,
5849 GetRequestContextTypeForWebURLRequest(*request)))); 5853 GetRequestContextTypeForWebURLRequest(*request))));
5850 } 5854 }
5851 5855
5852 void RenderFrameImpl::LoadDataURL( 5856 void RenderFrameImpl::LoadDataURL(
5853 const CommonNavigationParams& params, 5857 const CommonNavigationParams& params,
5854 const RequestNavigationParams& request_params, 5858 const RequestNavigationParams& request_params,
5855 WebLocalFrame* frame, 5859 WebLocalFrame* frame,
5856 blink::WebFrameLoadType load_type, 5860 blink::WebFrameLoadType load_type,
5857 blink::WebHistoryItem item_for_history_navigation, 5861 blink::WebHistoryItem item_for_history_navigation,
5858 blink::WebHistoryLoadType history_load_type, 5862 blink::WebHistoryLoadType history_load_type,
(...skipping 451 matching lines...) Expand 10 before | Expand all | Expand 10 after
6310 // event target. Potentially a Pepper plugin will receive the event. 6314 // event target. Potentially a Pepper plugin will receive the event.
6311 // In order to tell whether a plugin gets the last mouse event and which it 6315 // In order to tell whether a plugin gets the last mouse event and which it
6312 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets 6316 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets
6313 // the event, it will notify us via DidReceiveMouseEvent() and set itself as 6317 // the event, it will notify us via DidReceiveMouseEvent() and set itself as
6314 // |pepper_last_mouse_event_target_|. 6318 // |pepper_last_mouse_event_target_|.
6315 pepper_last_mouse_event_target_ = nullptr; 6319 pepper_last_mouse_event_target_ = nullptr;
6316 #endif 6320 #endif
6317 } 6321 }
6318 6322
6319 } // namespace content 6323 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698