Index: content/browser/service_worker/embedded_worker_registry.cc |
diff --git a/content/browser/service_worker/embedded_worker_registry.cc b/content/browser/service_worker/embedded_worker_registry.cc |
index adf2579d733fb27a59a944fb3a29d033db6e9da9..fa8197a4159bf7354aafa5e76a44693218788152 100644 |
--- a/content/browser/service_worker/embedded_worker_registry.cc |
+++ b/content/browser/service_worker/embedded_worker_registry.cc |
@@ -182,13 +182,18 @@ void EmbeddedWorkerRegistry::OnReportConsoleMessage( |
} |
void EmbeddedWorkerRegistry::AddChildProcessSender( |
- int process_id, IPC::Sender* sender) { |
+ int process_id, |
+ IPC::Sender* sender, |
+ MessagePortMessageFilter* message_port_message_filter) { |
process_sender_map_[process_id] = sender; |
+ process_message_port_message_filter_map_[process_id] = |
+ message_port_message_filter; |
DCHECK(!ContainsKey(worker_process_map_, process_id)); |
} |
void EmbeddedWorkerRegistry::RemoveChildProcessSender(int process_id) { |
process_sender_map_.erase(process_id); |
+ process_message_port_message_filter_map_.erase(process_id); |
std::map<int, std::set<int> >::iterator found = |
worker_process_map_.find(process_id); |
if (found != worker_process_map_.end()) { |
@@ -220,6 +225,11 @@ bool EmbeddedWorkerRegistry::CanHandle(int embedded_worker_id) const { |
return true; |
} |
+MessagePortMessageFilter* |
+EmbeddedWorkerRegistry::MessagePortMessageFilterForProcess(int process_id) { |
+ return process_message_port_message_filter_map_[process_id]; |
+} |
+ |
EmbeddedWorkerRegistry::EmbeddedWorkerRegistry( |
const base::WeakPtr<ServiceWorkerContextCore>& context, |
int initial_embedded_worker_id) |