Index: content/browser/service_worker/service_worker_controllee_request_handler.cc |
diff --git a/content/browser/service_worker/service_worker_controllee_request_handler.cc b/content/browser/service_worker/service_worker_controllee_request_handler.cc |
index 0db1289002c8db8b2ab01d41aa5a8888cbb0da06..ac2e4c756500304667834424153a0a0ad57ff44c 100644 |
--- a/content/browser/service_worker/service_worker_controllee_request_handler.cc |
+++ b/content/browser/service_worker/service_worker_controllee_request_handler.cc |
@@ -33,6 +33,8 @@ ServiceWorkerControlleeRequestHandler::ServiceWorkerControlleeRequestHandler( |
ServiceWorkerUtils::IsMainResourceType(resource_type)), |
body_(body), |
weak_factory_(this) { |
+ if (is_main_resource_load_ && provider_host_) |
+ provider_host_->SetAllowAssociation(false); |
} |
ServiceWorkerControlleeRequestHandler:: |
@@ -45,6 +47,9 @@ ServiceWorkerControlleeRequestHandler:: |
else |
provider_host_->active_version()->DeferScheduledUpdate(); |
} |
+ |
+ if (is_main_resource_load_ && provider_host_) |
+ provider_host_->SetAllowAssociation(true); |
} |
net::URLRequestJob* ServiceWorkerControlleeRequestHandler::MaybeCreateJob( |
@@ -182,7 +187,11 @@ ServiceWorkerControlleeRequestHandler::DidLookupRegistrationForMainResource( |
return; |
} |
+ |
nhiroki
2014/09/10 02:04:11
nit: there is an extra empty line
michaeln
2014/09/10 22:40:40
Done.
|
+ provider_host_->SetAllowAssociation(true); |
provider_host_->AssociateRegistration(registration.get()); |
+ provider_host_->SetAllowAssociation(false); |
+ |
job_->ForwardToServiceWorker(); |
TRACE_EVENT_ASYNC_END2( |
"ServiceWorker", |
@@ -202,7 +211,10 @@ void ServiceWorkerControlleeRequestHandler::OnVersionStatusChanged( |
return; |
} |
+ provider_host_->SetAllowAssociation(true); |
provider_host_->AssociateRegistration(registration); |
+ provider_host_->SetAllowAssociation(false); |
+ |
job_->ForwardToServiceWorker(); |
} |