| Index: content/browser/service_worker/service_worker_dispatcher_host.cc
|
| diff --git a/content/browser/service_worker/service_worker_dispatcher_host.cc b/content/browser/service_worker/service_worker_dispatcher_host.cc
|
| index 0ddaaf1da74e358ad6789831445c42867cef462c..ded0a37bb3a92b2f18ac5f5111642223beeb576d 100644
|
| --- a/content/browser/service_worker/service_worker_dispatcher_host.cc
|
| +++ b/content/browser/service_worker/service_worker_dispatcher_host.cc
|
| @@ -100,8 +100,8 @@ bool ServiceWorkerDispatcherHost::OnMessageReceived(
|
| OnProviderDestroyed)
|
| IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_SetVersionId,
|
| OnSetHostedVersionId)
|
| - IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_PostMessage,
|
| - OnPostMessage)
|
| + IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_PostMessageToWorker,
|
| + OnPostMessageToWorker)
|
| IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerScriptLoaded,
|
| OnWorkerScriptLoaded)
|
| IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerScriptLoadFailed,
|
| @@ -224,30 +224,26 @@ void ServiceWorkerDispatcherHost::OnUnregisterServiceWorker(
|
| request_id));
|
| }
|
|
|
| -void ServiceWorkerDispatcherHost::OnPostMessage(
|
| +void ServiceWorkerDispatcherHost::OnPostMessageToWorker(
|
| int handle_id,
|
| const base::string16& message,
|
| const std::vector<int>& sent_message_port_ids) {
|
| if (!context_ || !ServiceWorkerUtils::IsFeatureEnabled())
|
| return;
|
|
|
| - std::vector<int> new_routing_ids(sent_message_port_ids.size());
|
| - for (size_t i = 0; i < sent_message_port_ids.size(); ++i) {
|
| - new_routing_ids[i] = message_port_message_filter_->GetNextRoutingID();
|
| - MessagePortService::GetInstance()->UpdateMessagePort(
|
| - sent_message_port_ids[i],
|
| - message_port_message_filter_,
|
| - new_routing_ids[i]);
|
| - }
|
| -
|
| ServiceWorkerHandle* handle = handles_.Lookup(handle_id);
|
| if (!handle) {
|
| BadMessageReceived();
|
| return;
|
| }
|
|
|
| + std::vector<int> new_routing_ids;
|
| + message_port_message_filter_->UpdateMessagePortsWithNewRoutes(
|
| + sent_message_port_ids, &new_routing_ids);
|
| handle->version()->SendMessage(
|
| - ServiceWorkerMsg_Message(message, sent_message_port_ids, new_routing_ids),
|
| + ServiceWorkerMsg_MessageToWorker(message,
|
| + sent_message_port_ids,
|
| + new_routing_ids),
|
| base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
|
| }
|
|
|
|
|