Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index 29958841fffe598a1847d66da414a6a16353a047..2eb3be8faa668eddb1c8d748c675d406a9dde237 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -1610,6 +1610,15 @@ void RenderFrameImpl::OnSwapOut( |
if (is_loading) |
proxy->OnDidStartLoading(); |
+ } else if (!is_main_frame) { |
alexmos
2016/04/15 17:05:12
I initially tried to do this for all frames for co
Charlie Reis
2016/04/15 23:20:05
On one hand, there are 400 references to WebView::
alexmos
2016/04/22 05:09:34
Agree with all your concerns, so I'm super-happy t
|
+ // If there is no proxy, this is the last active frame in this |
+ // SiteInstance, and its WebWidget and RenderView will be closed |
+ // shortly afterward. The closing of RenderView would eventually detach |
+ // this frame along with any other frames in the frame tree, but if this is |
+ // a subframe, delete it right away to prevent it from being used after its |
+ // WebFrameWidget has been cleared. See https://crbug.com/568836#15 for |
+ // details. |
+ OnDeleteFrame(); |
Charlie Reis
2016/04/15 23:20:05
I'm assuming that using OnDeleteFrame() rather tha
nasko
2016/04/18 21:24:26
This method is called by the browser, so in a sens
alexmos
2016/04/22 05:09:34
Likewise, this concern is gone in the latest PS. :
|
} |
// Initialize the WebRemoteFrame with the replication state passed by the |