Index: content/browser/service_worker/service_worker_job_coordinator.cc |
diff --git a/content/browser/service_worker/service_worker_job_coordinator.cc b/content/browser/service_worker/service_worker_job_coordinator.cc |
index 71cc1e1347e6c4b28078716a76fb9449ca3fea43..e2e73ff1775a339b19ce7b6a50824f8da8c30037 100644 |
--- a/content/browser/service_worker/service_worker_job_coordinator.cc |
+++ b/content/browser/service_worker/service_worker_job_coordinator.cc |
@@ -133,6 +133,21 @@ void ServiceWorkerJobCoordinator::Update( |
force_bypass_cache))); |
} |
+void ServiceWorkerJobCoordinator::Update( |
+ ServiceWorkerRegistration* registration, |
+ bool force_bypass_cache, |
+ ServiceWorkerProviderHost* provider_host, |
+ const ServiceWorkerRegisterJob::RegistrationCallback& callback) { |
+ DCHECK(registration); |
+ DCHECK(registration->GetNewestVersion()); |
+ ServiceWorkerRegisterJob* queued_job = static_cast<ServiceWorkerRegisterJob*>( |
+ job_queues_[registration->pattern()].Push( |
+ make_scoped_ptr<ServiceWorkerRegisterJobBase>( |
+ new ServiceWorkerRegisterJob(context_, registration, |
+ force_bypass_cache)))); |
+ queued_job->AddCallback(callback, provider_host); |
+} |
+ |
void ServiceWorkerJobCoordinator::AbortAll() { |
for (RegistrationJobMap::iterator it = job_queues_.begin(); |
it != job_queues_.end(); ++it) { |