| Index: content/child/service_worker/service_worker_dispatcher.cc
|
| diff --git a/content/child/service_worker/service_worker_dispatcher.cc b/content/child/service_worker/service_worker_dispatcher.cc
|
| index 4e18acab56905da319d2e70acf02de5f1772c540..c994847ed985cf1a6b90de88be5a11a8e3cf04d2 100644
|
| --- a/content/child/service_worker/service_worker_dispatcher.cc
|
| +++ b/content/child/service_worker/service_worker_dispatcher.cc
|
| @@ -136,7 +136,8 @@ void ServiceWorkerDispatcher::RegisterServiceWorker(
|
| return;
|
| }
|
|
|
| - int request_id = pending_registration_callbacks_.Add(callbacks);
|
| + int request_id = pending_registration_callbacks_.Add(
|
| + std::unique_ptr<WebServiceWorkerRegistrationCallbacks>(callbacks));
|
| TRACE_EVENT_ASYNC_BEGIN2("ServiceWorker",
|
| "ServiceWorkerDispatcher::RegisterServiceWorker",
|
| request_id,
|
| @@ -151,7 +152,8 @@ void ServiceWorkerDispatcher::UpdateServiceWorker(
|
| int64_t registration_id,
|
| WebServiceWorkerUpdateCallbacks* callbacks) {
|
| DCHECK(callbacks);
|
| - int request_id = pending_update_callbacks_.Add(callbacks);
|
| + int request_id = pending_update_callbacks_.Add(
|
| + std::unique_ptr<WebServiceWorkerUpdateCallbacks>(callbacks));
|
| thread_safe_sender_->Send(new ServiceWorkerHostMsg_UpdateServiceWorker(
|
| CurrentWorkerId(), request_id, provider_id, registration_id));
|
| }
|
| @@ -161,7 +163,8 @@ void ServiceWorkerDispatcher::UnregisterServiceWorker(
|
| int64_t registration_id,
|
| WebServiceWorkerUnregistrationCallbacks* callbacks) {
|
| DCHECK(callbacks);
|
| - int request_id = pending_unregistration_callbacks_.Add(callbacks);
|
| + int request_id = pending_unregistration_callbacks_.Add(
|
| + std::unique_ptr<WebServiceWorkerUnregistrationCallbacks>(callbacks));
|
| TRACE_EVENT_ASYNC_BEGIN1("ServiceWorker",
|
| "ServiceWorkerDispatcher::UnregisterServiceWorker",
|
| request_id, "Registration ID", registration_id);
|
| @@ -186,7 +189,8 @@ void ServiceWorkerDispatcher::GetRegistration(
|
| return;
|
| }
|
|
|
| - int request_id = pending_get_registration_callbacks_.Add(callbacks);
|
| + int request_id = pending_get_registration_callbacks_.Add(
|
| + std::unique_ptr<WebServiceWorkerGetRegistrationCallbacks>(callbacks));
|
| TRACE_EVENT_ASYNC_BEGIN1("ServiceWorker",
|
| "ServiceWorkerDispatcher::GetRegistration",
|
| request_id,
|
| @@ -200,7 +204,9 @@ void ServiceWorkerDispatcher::GetRegistrations(
|
| WebServiceWorkerGetRegistrationsCallbacks* callbacks) {
|
| DCHECK(callbacks);
|
|
|
| - int request_id = pending_get_registrations_callbacks_.Add(callbacks);
|
| + int request_id = pending_get_registrations_callbacks_.Add(
|
| + std::unique_ptr<WebServiceWorkerGetRegistrationsCallbacks>(callbacks));
|
| +
|
| TRACE_EVENT_ASYNC_BEGIN0("ServiceWorker",
|
| "ServiceWorkerDispatcher::GetRegistrations",
|
| request_id);
|
| @@ -211,7 +217,9 @@ void ServiceWorkerDispatcher::GetRegistrations(
|
| void ServiceWorkerDispatcher::GetRegistrationForReady(
|
| int provider_id,
|
| WebServiceWorkerGetRegistrationForReadyCallbacks* callbacks) {
|
| - int request_id = get_for_ready_callbacks_.Add(callbacks);
|
| + int request_id = get_for_ready_callbacks_.Add(
|
| + std::unique_ptr<WebServiceWorkerGetRegistrationForReadyCallbacks>(
|
| + callbacks));
|
| TRACE_EVENT_ASYNC_BEGIN0("ServiceWorker",
|
| "ServiceWorkerDispatcher::GetRegistrationForReady",
|
| request_id);
|
| @@ -226,7 +234,7 @@ void ServiceWorkerDispatcher::EnableNavigationPreload(
|
| std::unique_ptr<WebEnableNavigationPreloadCallbacks> callbacks) {
|
| DCHECK(callbacks);
|
| int request_id =
|
| - enable_navigation_preload_callbacks_.Add(callbacks.release());
|
| + enable_navigation_preload_callbacks_.Add(std::move(callbacks));
|
| thread_safe_sender_->Send(new ServiceWorkerHostMsg_EnableNavigationPreload(
|
| CurrentWorkerId(), request_id, provider_id, registration_id, enable));
|
| }
|
| @@ -237,7 +245,7 @@ void ServiceWorkerDispatcher::GetNavigationPreloadState(
|
| std::unique_ptr<WebGetNavigationPreloadStateCallbacks> callbacks) {
|
| DCHECK(callbacks);
|
| int request_id =
|
| - get_navigation_preload_state_callbacks_.Add(callbacks.release());
|
| + get_navigation_preload_state_callbacks_.Add(std::move(callbacks));
|
| thread_safe_sender_->Send(new ServiceWorkerHostMsg_GetNavigationPreloadState(
|
| CurrentWorkerId(), request_id, provider_id, registration_id));
|
| }
|
| @@ -249,7 +257,7 @@ void ServiceWorkerDispatcher::SetNavigationPreloadHeader(
|
| std::unique_ptr<WebSetNavigationPreloadHeaderCallbacks> callbacks) {
|
| DCHECK(callbacks);
|
| int request_id =
|
| - set_navigation_preload_header_callbacks_.Add(callbacks.release());
|
| + set_navigation_preload_header_callbacks_.Add(std::move(callbacks));
|
| thread_safe_sender_->Send(new ServiceWorkerHostMsg_SetNavigationPreloadHeader(
|
| CurrentWorkerId(), request_id, provider_id, registration_id, value));
|
| }
|
|
|