diff options
Diffstat (limited to 'content/browser/renderer_host/render_view_host_impl.cc')
-rw-r--r-- | content/browser/renderer_host/render_view_host_impl.cc | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/content/browser/renderer_host/render_view_host_impl.cc b/content/browser/renderer_host/render_view_host_impl.cc index b19331f..7577b59 100644 --- a/content/browser/renderer_host/render_view_host_impl.cc +++ b/content/browser/renderer_host/render_view_host_impl.cc @@ -27,7 +27,6 @@ #include "content/browser/cross_site_request_manager.h" #include "content/browser/dom_storage/session_storage_namespace_impl.h" #include "content/browser/frame_host/frame_tree.h" -#include "content/browser/frame_host/render_frame_host_factory.h" #include "content/browser/gpu/compositor_util.h" #include "content/browser/gpu/gpu_data_manager_impl.h" #include "content/browser/gpu/gpu_process_host.h" @@ -182,7 +181,6 @@ RenderViewHostImpl* RenderViewHostImpl::FromID(int render_process_id, RenderViewHostImpl::RenderViewHostImpl( SiteInstance* instance, RenderViewHostDelegate* delegate, - RenderFrameHostDelegate* frame_delegate, RenderWidgetHostDelegate* widget_delegate, int routing_id, int main_frame_routing_id, @@ -201,6 +199,7 @@ RenderViewHostImpl::RenderViewHostImpl( is_swapped_out_(swapped_out), is_subframe_(false), main_frame_id_(-1), + main_frame_routing_id_(main_frame_routing_id), run_modal_reply_msg_(NULL), run_modal_opener_id_(MSG_ROUTING_NONE), is_waiting_for_beforeunload_ack_(false), @@ -214,16 +213,6 @@ RenderViewHostImpl::RenderViewHostImpl( DCHECK(instance_.get()); CHECK(delegate_); // http://crbug.com/82827 - if (main_frame_routing_id == MSG_ROUTING_NONE) - main_frame_routing_id = GetProcess()->GetNextRoutingID(); - - main_render_frame_host_ = RenderFrameHostFactory::Create( - this, frame_delegate, delegate_->GetFrameTree(), - delegate_->GetFrameTree()->root(), - main_frame_routing_id, is_swapped_out_); - delegate_->GetFrameTree()->root()->set_render_frame_host( - main_render_frame_host_.get(), false); - GetProcess()->EnableSendQueue(); if (!swapped_out) @@ -303,7 +292,7 @@ bool RenderViewHostImpl::CreateRenderView( delegate_->GetRendererPrefs(GetProcess()->GetBrowserContext()); params.web_preferences = delegate_->GetWebkitPrefs(); params.view_id = GetRoutingID(); - params.main_frame_routing_id = main_render_frame_host()->routing_id(); + params.main_frame_routing_id = main_frame_routing_id_; params.surface_id = surface_id(); params.session_storage_namespace_id = delegate_->GetSessionStorageNamespace(instance_)->id(); @@ -1314,7 +1303,6 @@ bool RenderViewHostImpl::OnMessageReceived(const IPC::Message& msg) { void RenderViewHostImpl::Init() { RenderWidgetHostImpl::Init(); - main_render_frame_host()->Init(); } void RenderViewHostImpl::Shutdown() { @@ -1428,7 +1416,7 @@ void RenderViewHostImpl::OnRenderProcessGone(int status, int exit_code) { // TODO(creis): Once subframes can be in different processes, we'll need to // clear just the FrameTreeNodes affected by the crash (and their subtrees). main_frame_id_ = -1; - delegate_->GetFrameTree()->SwapMainFrame(main_render_frame_host_.get()); + delegate_->GetFrameTree()->ResetForMainFrameSwap(); // Our base class RenderWidgetHost needs to reset some stuff. RendererExited(render_view_termination_status_, exit_code); @@ -2333,7 +2321,7 @@ bool RenderViewHostImpl::CanAccessFilesOfPageState( void RenderViewHostImpl::AttachToFrameTree() { FrameTree* frame_tree = delegate_->GetFrameTree(); - frame_tree->SwapMainFrame(main_render_frame_host_.get()); + frame_tree->ResetForMainFrameSwap(); if (main_frame_id() != FrameTreeNode::kInvalidFrameId) { frame_tree->OnFirstNavigationAfterSwap(main_frame_id()); } |