Index: content/browser/service_worker/service_worker_register_job.cc |
diff --git a/content/browser/service_worker/service_worker_register_job.cc b/content/browser/service_worker/service_worker_register_job.cc |
index c19da94033910f3e1d67c28094072b7f2fd616f3..44c6f60e22f9cd71fffc30593599b88f8ff8da43 100644 |
--- a/content/browser/service_worker/service_worker_register_job.cc |
+++ b/content/browser/service_worker/service_worker_register_job.cc |
@@ -197,11 +197,12 @@ void ServiceWorkerRegisterJob::ContinueWithRegistration( |
return; |
} |
- if (!existing_registration.get()) { |
+ if (!existing_registration.get() || existing_registration->is_uninstalled()) { |
RegisterAndContinue(SERVICE_WORKER_OK); |
return; |
} |
+ DCHECK(existing_registration->GetNewestVersion()); |
// "If scriptURL is equal to registration.[[ScriptURL]], then:" |
if (existing_registration->GetNewestVersion()->script_url() == script_url_) { |
// "Set registration.[[Uninstalling]] to false." |