| Index: content/renderer/service_worker/service_worker_context_client.cc
|
| diff --git a/content/renderer/service_worker/service_worker_context_client.cc b/content/renderer/service_worker/service_worker_context_client.cc
|
| index f76e81dbe660899a2d5904ad16242c7ea2a8af31..58df9f66dec384136f20b9d4649c012a9c3eee02 100644
|
| --- a/content/renderer/service_worker/service_worker_context_client.cc
|
| +++ b/content/renderer/service_worker/service_worker_context_client.cc
|
| @@ -458,7 +458,8 @@ void ServiceWorkerContextClient::getClient(
|
| const blink::WebString& id,
|
| blink::WebServiceWorkerClientCallbacks* callbacks) {
|
| DCHECK(callbacks);
|
| - int request_id = context_->client_callbacks.Add(callbacks);
|
| + int request_id = context_->client_callbacks.Add(
|
| + std::unique_ptr<blink::WebServiceWorkerClientCallbacks>(callbacks));
|
| Send(new ServiceWorkerHostMsg_GetClient(
|
| GetRoutingID(), request_id, base::UTF16ToUTF8(base::StringPiece16(id))));
|
| }
|
| @@ -467,7 +468,8 @@ void ServiceWorkerContextClient::getClients(
|
| const blink::WebServiceWorkerClientQueryOptions& weboptions,
|
| blink::WebServiceWorkerClientsCallbacks* callbacks) {
|
| DCHECK(callbacks);
|
| - int request_id = context_->clients_callbacks.Add(callbacks);
|
| + int request_id = context_->clients_callbacks.Add(
|
| + std::unique_ptr<blink::WebServiceWorkerClientsCallbacks>(callbacks));
|
| ServiceWorkerClientQueryOptions options;
|
| options.client_type = weboptions.clientType;
|
| options.include_uncontrolled = weboptions.includeUncontrolled;
|
| @@ -479,7 +481,8 @@ void ServiceWorkerContextClient::openWindow(
|
| const blink::WebURL& url,
|
| blink::WebServiceWorkerClientCallbacks* callbacks) {
|
| DCHECK(callbacks);
|
| - int request_id = context_->client_callbacks.Add(callbacks);
|
| + int request_id = context_->client_callbacks.Add(
|
| + std::unique_ptr<blink::WebServiceWorkerClientCallbacks>(callbacks));
|
| Send(new ServiceWorkerHostMsg_OpenWindow(
|
| GetRoutingID(), request_id, url));
|
| }
|
| @@ -878,7 +881,8 @@ void ServiceWorkerContextClient::focus(
|
| const blink::WebString& uuid,
|
| blink::WebServiceWorkerClientCallbacks* callback) {
|
| DCHECK(callback);
|
| - int request_id = context_->client_callbacks.Add(callback);
|
| + int request_id = context_->client_callbacks.Add(
|
| + std::unique_ptr<blink::WebServiceWorkerClientCallbacks>(callback));
|
| Send(new ServiceWorkerHostMsg_FocusClient(
|
| GetRoutingID(), request_id,
|
| base::UTF16ToUTF8(base::StringPiece16(uuid))));
|
| @@ -889,7 +893,8 @@ void ServiceWorkerContextClient::navigate(
|
| const blink::WebURL& url,
|
| blink::WebServiceWorkerClientCallbacks* callback) {
|
| DCHECK(callback);
|
| - int request_id = context_->client_callbacks.Add(callback);
|
| + int request_id = context_->client_callbacks.Add(
|
| + std::unique_ptr<blink::WebServiceWorkerClientCallbacks>(callback));
|
| Send(new ServiceWorkerHostMsg_NavigateClient(
|
| GetRoutingID(), request_id, base::UTF16ToUTF8(base::StringPiece16(uuid)),
|
| url));
|
| @@ -898,14 +903,16 @@ void ServiceWorkerContextClient::navigate(
|
| void ServiceWorkerContextClient::skipWaiting(
|
| blink::WebServiceWorkerSkipWaitingCallbacks* callbacks) {
|
| DCHECK(callbacks);
|
| - int request_id = context_->skip_waiting_callbacks.Add(callbacks);
|
| + int request_id = context_->skip_waiting_callbacks.Add(
|
| + std::unique_ptr<blink::WebServiceWorkerSkipWaitingCallbacks>(callbacks));
|
| Send(new ServiceWorkerHostMsg_SkipWaiting(GetRoutingID(), request_id));
|
| }
|
|
|
| void ServiceWorkerContextClient::claim(
|
| blink::WebServiceWorkerClientsClaimCallbacks* callbacks) {
|
| DCHECK(callbacks);
|
| - int request_id = context_->claim_clients_callbacks.Add(callbacks);
|
| + int request_id = context_->claim_clients_callbacks.Add(
|
| + std::unique_ptr<blink::WebServiceWorkerClientsClaimCallbacks>(callbacks));
|
| Send(new ServiceWorkerHostMsg_ClaimClients(GetRoutingID(), request_id));
|
| }
|
|
|
| @@ -923,8 +930,8 @@ void ServiceWorkerContextClient::DispatchSyncEvent(
|
| const SyncCallback& callback) {
|
| TRACE_EVENT0("ServiceWorker",
|
| "ServiceWorkerContextClient::DispatchSyncEvent");
|
| - int request_id =
|
| - context_->sync_event_callbacks.Add(new SyncCallback(callback));
|
| + int request_id = context_->sync_event_callbacks.Add(
|
| + base::MakeUnique<SyncCallback>(callback));
|
|
|
| // TODO(jkarlin): Make this blink::WebString::FromUTF8Lenient once
|
| // https://crrev.com/1768063002/ lands.
|
| @@ -1013,8 +1020,8 @@ void ServiceWorkerContextClient::DispatchFetchEvent(
|
| blink::WebServiceWorkerRequest webRequest;
|
| TRACE_EVENT0("ServiceWorker",
|
| "ServiceWorkerContextClient::DispatchFetchEvent");
|
| - context_->fetch_event_callbacks.AddWithID(new FetchCallback(callback),
|
| - fetch_event_id);
|
| + context_->fetch_event_callbacks.AddWithID(
|
| + base::MakeUnique<FetchCallback>(callback), fetch_event_id);
|
| if (preload_request) {
|
| context_->preload_requests.AddWithID(std::move(preload_request),
|
| fetch_event_id);
|
|
|