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 562fc9571cafa89b4f368e976f77d64af40dc6fe..16c52fa41a6adf85ab387cfd8f4c9b89c4b4db14 100644 |
--- a/content/browser/service_worker/service_worker_dispatcher_host.cc |
+++ b/content/browser/service_worker/service_worker_dispatcher_host.cc |
@@ -4,6 +4,7 @@ |
#include "content/browser/service_worker/service_worker_dispatcher_host.h" |
+#include "base/bind.h" |
#include "base/logging.h" |
#include "base/strings/utf_string_conversions.h" |
#include "content/browser/message_port_message_filter.h" |
@@ -51,6 +52,8 @@ ServiceWorkerDispatcherHost::~ServiceWorkerDispatcherHost() { |
context_->RemoveAllProviderHostsForProcess(render_process_id_); |
context_->embedded_worker_registry()->RemoveChildProcessSender( |
render_process_id_); |
+ context_->embedded_worker_registry() |
+ ->RemoveChildProcessNextRoutingIDCallback(render_process_id_); |
} |
} |
@@ -66,6 +69,10 @@ void ServiceWorkerDispatcherHost::Init( |
context_ = context_wrapper->context()->AsWeakPtr(); |
context_->embedded_worker_registry()->AddChildProcessSender( |
render_process_id_, this); |
+ context_->embedded_worker_registry()->AddChildProcessNextRoutingIDCallback( |
+ render_process_id_, |
+ base::Bind(&MessagePortMessageFilter::GetNextRoutingID, |
+ message_port_message_filter_)); |
} |
void ServiceWorkerDispatcherHost::OnDestruct() const { |