| Index: content/browser/service_worker/service_worker_version.cc
|
| diff --git a/content/browser/service_worker/service_worker_version.cc b/content/browser/service_worker/service_worker_version.cc
|
| index 494b5ba090626fdd06c7c671f2dba1c9a7ae5f38..4d7351525294e03783d7ee6a1d8d5cf067a59b54 100644
|
| --- a/content/browser/service_worker/service_worker_version.cc
|
| +++ b/content/browser/service_worker/service_worker_version.cc
|
| @@ -217,7 +217,13 @@ void ServiceWorkerVersion::DeferScheduledUpdate() {
|
|
|
| void ServiceWorkerVersion::StartUpdate() {
|
| update_timer_.Stop();
|
| - // TODO(michaeln): write me
|
| + if (!context_)
|
| + return;
|
| + ServiceWorkerRegistration* registration =
|
| + context_->GetLiveRegistration(registration_id_);
|
| + if (!registration)
|
| + return;
|
| + context_->UpdateServiceWorker(registration);
|
| }
|
|
|
| void ServiceWorkerVersion::SendMessage(
|
| @@ -389,6 +395,7 @@ void ServiceWorkerVersion::RemoveControllee(
|
| RemoveProcessFromWorker(provider_host->process_id());
|
| if (HasControllee())
|
| return;
|
| + FOR_EACH_OBSERVER(Listener, listeners_, OnNoControllees(this));
|
| if (is_doomed_) {
|
| DoomInternal();
|
| return;
|
|
|