Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index 7f38d6c98c43cf5910a9efe523420224fe8b32d7..af7d5e4bfe791090c6b7a272061758a5ce675940 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -772,6 +772,9 @@ void RenderViewImpl::Initialize(RenderViewImplParams* params) { |
if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kSitePerProcess) && |
proxy) { |
webview()->setMainFrame(proxy->web_frame()); |
+ // Initialize the WebRemoteFrame with information replicated from the |
+ // browser process. |
+ proxy->SetReplicatedState(params->remote_frame_state); |
} else { |
webview()->setMainFrame(main_render_frame_->GetWebFrame()); |
} |
@@ -1154,6 +1157,7 @@ RenderViewImpl* RenderViewImpl::Create( |
const base::string16& frame_name, |
bool is_renderer_created, |
bool swapped_out, |
+ const FrameReplicationState& remote_frame_state, |
int32 proxy_routing_id, |
bool hidden, |
bool never_visible, |
@@ -1174,6 +1178,7 @@ RenderViewImpl* RenderViewImpl::Create( |
frame_name, |
is_renderer_created, |
swapped_out, |
+ remote_frame_state, |
proxy_routing_id, |
hidden, |
never_visible, |
@@ -1714,6 +1719,7 @@ WebView* RenderViewImpl::createView(WebLocalFrame* creator, |
base::string16(), // WebCore will take care of setting the correct name. |
true, // is_renderer_created |
false, // swapped_out |
+ FrameReplicationState(), // Empty since swapped_out is false. |
MSG_ROUTING_NONE, // proxy_routing_id |
params.disposition == NEW_BACKGROUND_TAB, // hidden |
never_visible, |