Chromium Code Reviews| Index: content/renderer/render_frame_impl.cc |
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
| index ad515e04ec88f74915717fe28144c4a654ecfeec..0a8692df74dfe603d4836f24f4f2f826cf60daec 100644 |
| --- a/content/renderer/render_frame_impl.cc |
| +++ b/content/renderer/render_frame_impl.cc |
| @@ -730,8 +730,10 @@ RenderFrameImpl::~RenderFrameImpl() { |
| render_view_->UnregisterVideoHoleFrame(this); |
| #endif |
| - if (render_frame_proxy_) |
| - delete render_frame_proxy_; |
| + // RenderFrameProxy is only "owned" by RenderFrameImpl in the case it is the |
| + // main frame. Ensure it is deleted along with this object. |
| + if (!is_subframe_ && render_frame_proxy_) |
|
ncarter (slow)
2015/05/07 23:33:36
I was initially worried that this frameDetached ca
nasko
2015/05/07 23:46:05
I did at the subframe check exactly to guard again
|
| + render_frame_proxy_->frameDetached(); |
|
ncarter (slow)
2015/05/07 23:33:36
Gosh it's kinda gross that the rfph dtor calls bac
nasko
2015/05/07 23:46:05
I'm hopeful that the CL I'm working on is going to
|
| render_view_->UnregisterRenderFrame(this); |
| g_routing_id_frame_map.Get().erase(routing_id_); |