Index: content/child/service_worker/service_worker_network_provider.cc |
diff --git a/content/child/service_worker/service_worker_network_provider.cc b/content/child/service_worker/service_worker_network_provider.cc |
index 5c883a0154ddb182d6ad680b5a4c77660f2b373f..0ad0365ddcc00c94a579d24c3c190d546068f1c7 100644 |
--- a/content/child/service_worker/service_worker_network_provider.cc |
+++ b/content/child/service_worker/service_worker_network_provider.cc |
@@ -7,7 +7,6 @@ |
#include "base/atomic_sequence_num.h" |
#include "content/child/child_thread_impl.h" |
#include "content/child/service_worker/service_worker_provider_context.h" |
-#include "content/common/navigation_params.h" |
#include "content/common/service_worker/service_worker_messages.h" |
#include "content/common/service_worker/service_worker_utils.h" |
#include "content/public/common/browser_side_navigation_policy.h" |
@@ -58,34 +57,18 @@ ServiceWorkerNetworkProvider* ServiceWorkerNetworkProvider::FromDocumentState( |
std::unique_ptr<ServiceWorkerNetworkProvider> |
ServiceWorkerNetworkProvider::CreateForNavigation( |
int route_id, |
- const RequestNavigationParams& request_params, |
blink::WebLocalFrame* frame, |
bool content_initiated) { |
- bool browser_side_navigation = IsBrowserSideNavigationEnabled(); |
- bool should_create_provider_for_window = false; |
- int service_worker_provider_id = kInvalidServiceWorkerProviderId; |
- std::unique_ptr<ServiceWorkerNetworkProvider> network_provider; |
- |
// Determine if a ServiceWorkerNetworkProvider should be created and properly |
// initialized for the navigation. A default ServiceWorkerNetworkProvider |
// will always be created since it is expected in a certain number of places, |
// however it will have an invalid id. |
- // PlzNavigate: |service_worker_provider_id| can be sent by the browser, if |
- // it already created the SeviceWorkerProviderHost. |
- if (browser_side_navigation && !content_initiated) { |
- should_create_provider_for_window = |
- request_params.should_create_service_worker; |
- service_worker_provider_id = request_params.service_worker_provider_id; |
- DCHECK(ServiceWorkerUtils::IsBrowserAssignedProviderId( |
- service_worker_provider_id) || |
- service_worker_provider_id == kInvalidServiceWorkerProviderId); |
- } else { |
- should_create_provider_for_window = |
- ((frame->effectiveSandboxFlags() & blink::WebSandboxFlags::Origin) != |
- blink::WebSandboxFlags::Origin); |
- } |
+ bool should_create_provider_for_window = |
+ ((frame->effectiveSandboxFlags() & blink::WebSandboxFlags::Origin) != |
+ blink::WebSandboxFlags::Origin); |
// Now create the ServiceWorkerNetworkProvider (with invalid id if needed). |
+ std::unique_ptr<ServiceWorkerNetworkProvider> network_provider; |
if (should_create_provider_for_window) { |
// Ideally Document::isSecureContext would be called here, but the document |
// is not created yet, and due to redirects the URL may change. So pass |
@@ -94,20 +77,10 @@ ServiceWorkerNetworkProvider::CreateForNavigation( |
// control the document. |
const bool is_parent_frame_secure = IsFrameSecure(frame->parent()); |
- if (service_worker_provider_id == kInvalidServiceWorkerProviderId) { |
- network_provider = std::unique_ptr<ServiceWorkerNetworkProvider>( |
- new ServiceWorkerNetworkProvider(route_id, |
- SERVICE_WORKER_PROVIDER_FOR_WINDOW, |
- is_parent_frame_secure)); |
- } else { |
- CHECK(browser_side_navigation); |
- DCHECK(ServiceWorkerUtils::IsBrowserAssignedProviderId( |
- service_worker_provider_id)); |
- network_provider = std::unique_ptr<ServiceWorkerNetworkProvider>( |
- new ServiceWorkerNetworkProvider( |
- route_id, SERVICE_WORKER_PROVIDER_FOR_WINDOW, |
- service_worker_provider_id, is_parent_frame_secure)); |
- } |
+ network_provider = std::unique_ptr<ServiceWorkerNetworkProvider>( |
+ new ServiceWorkerNetworkProvider(route_id, |
+ SERVICE_WORKER_PROVIDER_FOR_WINDOW, |
+ is_parent_frame_secure)); |
} else { |
network_provider = std::unique_ptr<ServiceWorkerNetworkProvider>( |
new ServiceWorkerNetworkProvider()); |
@@ -118,11 +91,9 @@ ServiceWorkerNetworkProvider::CreateForNavigation( |
ServiceWorkerNetworkProvider::ServiceWorkerNetworkProvider( |
int route_id, |
ServiceWorkerProviderType provider_type, |
- int browser_provider_id, |
bool is_parent_frame_secure) |
- : provider_id_(browser_provider_id) { |
- if (provider_id_ == kInvalidServiceWorkerProviderId) |
- return; |
+ : provider_id_(GetNextProviderId()) { |
+ DCHECK(provider_id_ != kInvalidServiceWorkerProviderId); |
if (!ChildThreadImpl::current()) |
return; // May be null in some tests. |
context_ = new ServiceWorkerProviderContext( |
@@ -132,15 +103,6 @@ ServiceWorkerNetworkProvider::ServiceWorkerNetworkProvider( |
provider_id_, route_id, provider_type, is_parent_frame_secure)); |
} |
-ServiceWorkerNetworkProvider::ServiceWorkerNetworkProvider( |
- int route_id, |
- ServiceWorkerProviderType provider_type, |
- bool is_parent_frame_secure) |
- : ServiceWorkerNetworkProvider(route_id, |
- provider_type, |
- GetNextProviderId(), |
- is_parent_frame_secure) {} |
- |
ServiceWorkerNetworkProvider::ServiceWorkerNetworkProvider() |
: provider_id_(kInvalidServiceWorkerProviderId) {} |