Index: content/renderer/service_worker/embedded_worker_context_client.cc |
diff --git a/content/renderer/service_worker/embedded_worker_context_client.cc b/content/renderer/service_worker/embedded_worker_context_client.cc |
index ccf3dcce48defaba3f0f1d775b14fde0721beb91..6233e800f35a037db7c0ed1a8f23d497127af938 100644 |
--- a/content/renderer/service_worker/embedded_worker_context_client.cc |
+++ b/content/renderer/service_worker/embedded_worker_context_client.cc |
@@ -180,11 +180,11 @@ void EmbeddedWorkerContextClient::workerContextStarted( |
g_worker_client_tls.Pointer()->Set(this); |
script_context_.reset(new ServiceWorkerScriptContext(this, proxy)); |
- // This can be nullptr on EmbeddedWorkerBrowserTests. |
- // TODO(nhiroki): Remove this workaround. |registration()| should always be |
- // valid other than the test because the registration association message |
- // arrives before starting the worker context. |
- if (provider_context_->registration()) |
+ // This can be false on EmbeddedWorkerBrowserTests. |
+ // TODO(nhiroki): Remove this workaround. |IsAssociatedWithRegistration()| |
+ // should always return true other than the test because the registration |
+ // association message arrives before starting the worker context. |
+ if (provider_context_->IsAssociatedWithRegistration()) |
SetRegistrationInServiceWorkerGlobalScope(); |
Send(new EmbeddedWorkerHostMsg_WorkerScriptLoaded( |
@@ -423,15 +423,14 @@ void EmbeddedWorkerContextClient::SetRegistrationInServiceWorkerGlobalScope() { |
ServiceWorkerDispatcher::GetOrCreateThreadSpecificInstance( |
thread_safe_sender()); |
- // Register a registration with the dispatcher living on the worker thread. |
- DCHECK(provider_context_->registration()); |
- scoped_ptr<WebServiceWorkerRegistrationImpl> registration( |
- dispatcher->CreateServiceWorkerRegistration( |
- provider_context_->registration()->info(), false)); |
+ ServiceWorkerRegistrationObjectInfo info; |
+ ServiceWorkerVersionAttributes attrs; |
+ provider_context_->GetRegistrationInfoAndVersionAttributes(&info, &attrs); |
- // Register workers with the dispatcher living on the worker thread. |
- ServiceWorkerVersionAttributes attrs = |
- provider_context_->GetVersionAttributes(); |
+ // Register a registrationi and its version attributes with the dispatcher |
nhiroki
2015/01/28 05:54:58
registrationi -> registration
I'll fix this later
nhiroki
2015/01/28 07:42:27
Done.
|
+ // living on the worker thread. |
+ scoped_ptr<WebServiceWorkerRegistrationImpl> registration( |
+ dispatcher->CreateServiceWorkerRegistration(info, false)); |
registration->SetInstalling( |
dispatcher->GetServiceWorker(attrs.installing, false)); |
registration->SetWaiting( |