| 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 f28058180def3d1f97f9ab60bf13d43e43dc17e5..ce20a7aac5a7d2400f256b89b62e395281ae773a 100644
|
| --- a/content/child/service_worker/service_worker_dispatcher.cc
|
| +++ b/content/child/service_worker/service_worker_dispatcher.cc
|
| @@ -687,19 +687,15 @@ void ServiceWorkerDispatcher::OnSetControllerServiceWorker(
|
| }
|
|
|
| void ServiceWorkerDispatcher::OnPostMessage(
|
| - int thread_id,
|
| - int provider_id,
|
| - const base::string16& message,
|
| - const std::vector<TransferredMessagePort>& sent_message_ports,
|
| - const std::vector<int>& new_routing_ids) {
|
| + const ServiceWorkerMsg_MessageToDocument_Params& params) {
|
| // Make sure we're on the main document thread. (That must be the only
|
| // thread we get this message)
|
| DCHECK(ChildThreadImpl::current());
|
| - TRACE_EVENT1("ServiceWorker",
|
| - "ServiceWorkerDispatcher::OnPostMessage",
|
| - "Thread ID", thread_id);
|
| + TRACE_EVENT1("ServiceWorker", "ServiceWorkerDispatcher::OnPostMessage",
|
| + "Thread ID", params.thread_id);
|
|
|
| - ProviderClientMap::iterator found = provider_clients_.find(provider_id);
|
| + ProviderClientMap::iterator found =
|
| + provider_clients_.find(params.provider_id);
|
| if (found == provider_clients_.end()) {
|
| // For now we do no queueing for messages sent to nonexistent / unattached
|
| // client.
|
| @@ -708,10 +704,12 @@ void ServiceWorkerDispatcher::OnPostMessage(
|
|
|
| blink::WebMessagePortChannelArray ports =
|
| WebMessagePortChannelImpl::CreatePorts(
|
| - sent_message_ports, new_routing_ids,
|
| + params.message_ports, params.new_routing_ids,
|
| base::ThreadTaskRunnerHandle::Get());
|
|
|
| - found->second->dispatchMessageEvent(message, ports);
|
| + found->second->dispatchMessageEvent(
|
| + GetServiceWorker(params.service_worker_info, false /* adopt_handle */),
|
| + params.message, ports);
|
| }
|
|
|
| void ServiceWorkerDispatcher::AddServiceWorker(
|
|
|