OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/shared_worker/embedded_shared_worker_stub.h" | 5 #include "content/renderer/shared_worker/embedded_shared_worker_stub.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/threading/thread_task_runner_handle.h" | 10 #include "base/threading/thread_task_runner_handle.h" |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 blink::WebURLRequest& request) override { | 84 blink::WebURLRequest& request) override { |
85 ServiceWorkerNetworkProvider* provider = | 85 ServiceWorkerNetworkProvider* provider = |
86 GetNetworkProviderFromDataSource(data_source); | 86 GetNetworkProviderFromDataSource(data_source); |
87 std::unique_ptr<RequestExtraData> extra_data(new RequestExtraData); | 87 std::unique_ptr<RequestExtraData> extra_data(new RequestExtraData); |
88 extra_data->set_service_worker_provider_id(provider->provider_id()); | 88 extra_data->set_service_worker_provider_id(provider->provider_id()); |
89 request.setExtraData(extra_data.release()); | 89 request.setExtraData(extra_data.release()); |
90 // Explicitly set the SkipServiceWorker flag for subresources here if the | 90 // Explicitly set the SkipServiceWorker flag for subresources here if the |
91 // renderer process hasn't received SetControllerServiceWorker message. | 91 // renderer process hasn't received SetControllerServiceWorker message. |
92 if (request.getRequestContext() != | 92 if (request.getRequestContext() != |
93 blink::WebURLRequest::RequestContextSharedWorker && | 93 blink::WebURLRequest::RequestContextSharedWorker && |
94 !provider->IsControlledByServiceWorker()) { | 94 !provider->IsControlledByServiceWorker() && |
95 request.setSkipServiceWorker(true); | 95 request.skipServiceWorker() != |
| 96 blink::WebURLRequest::SkipServiceWorker::All) { |
| 97 request.setSkipServiceWorker( |
| 98 blink::WebURLRequest::SkipServiceWorker::Controlling); |
96 } | 99 } |
97 } | 100 } |
98 | 101 |
99 bool isControlledByServiceWorker(blink::WebDataSource& data_source) override { | 102 bool isControlledByServiceWorker(blink::WebDataSource& data_source) override { |
100 ServiceWorkerNetworkProvider* provider = | 103 ServiceWorkerNetworkProvider* provider = |
101 GetNetworkProviderFromDataSource(&data_source); | 104 GetNetworkProviderFromDataSource(&data_source); |
102 return provider->IsControlledByServiceWorker(); | 105 return provider->IsControlledByServiceWorker(); |
103 } | 106 } |
104 | 107 |
105 int64_t serviceWorkerID(blink::WebDataSource& data_source) override { | 108 int64_t serviceWorkerID(blink::WebDataSource& data_source) override { |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
303 } | 306 } |
304 } | 307 } |
305 | 308 |
306 void EmbeddedSharedWorkerStub::OnTerminateWorkerContext() { | 309 void EmbeddedSharedWorkerStub::OnTerminateWorkerContext() { |
307 // After this we wouldn't get any IPC for this stub. | 310 // After this we wouldn't get any IPC for this stub. |
308 running_ = false; | 311 running_ = false; |
309 impl_->terminateWorkerContext(); | 312 impl_->terminateWorkerContext(); |
310 } | 313 } |
311 | 314 |
312 } // namespace content | 315 } // namespace content |
OLD | NEW |