Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index 495f8d2a67fca4e51351e04771e2aaa72952b404..8b5aecea6a2a1fbf69c00e5f9a7e544573f2981d 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -405,12 +405,12 @@ RenderFrameImpl::RenderFrameImpl(RenderViewImpl* render_view, int routing_id) |
geolocation_dispatcher_(NULL), |
screen_orientation_dispatcher_(NULL), |
weak_factory_(this) { |
- RenderThread::Get()->AddRoute(routing_id_, this); |
- |
std::pair<RoutingIDFrameMap::iterator, bool> result = |
g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); |
CHECK(result.second) << "Inserting a duplicate item."; |
+ RenderThread::Get()->AddRoute(routing_id_, this); |
+ |
render_view_->RegisterRenderFrame(this); |
#if defined(OS_ANDROID) |
@@ -901,6 +901,11 @@ void RenderFrameImpl::OnNavigate(const FrameMsg_Navigate_Params& params) { |
render_view_->pending_navigation_params_.reset(); |
} |
+void RenderFrameImpl::BindServiceRegistry( |
+ mojo::ScopedMessagePipeHandle service_provider_handle) { |
+ service_registry_.BindRemoteServiceProvider(service_provider_handle.Pass()); |
+} |
+ |
void RenderFrameImpl::OnBeforeUnload() { |
// TODO(creis): Right now, this is only called on the main frame. Make the |
// browser process send dispatchBeforeUnloadEvent to every frame that needs |
@@ -1331,6 +1336,10 @@ void RenderFrameImpl::ExecuteJavaScript(const base::string16& javascript) { |
OnJavaScriptExecuteRequest(javascript, 0, false); |
} |
+ServiceRegistry* RenderFrameImpl::GetServiceRegistry() { |
+ return &service_registry_; |
+} |
+ |
void RenderFrameImpl::OnChildFrameProcessGone() { |
if (compositing_helper_) |
compositing_helper_->ChildFrameGone(); |