| Index: content/browser/frame_host/frame_tree_node.cc
|
| diff --git a/content/browser/frame_host/frame_tree_node.cc b/content/browser/frame_host/frame_tree_node.cc
|
| index ce357750443542d1ea3f4f1380313d6196b111e1..0d77618a729efc248dacd4799b72c7fb1cfc524e 100644
|
| --- a/content/browser/frame_host/frame_tree_node.cc
|
| +++ b/content/browser/frame_host/frame_tree_node.cc
|
| @@ -56,11 +56,13 @@ void FrameTreeNode::RemoveChild(FrameTreeNode* child) {
|
|
|
| void FrameTreeNode::ResetForMainFrame(
|
| RenderFrameHostImpl* new_render_frame_host) {
|
| - DCHECK_EQ(0UL, children_.size());
|
| -
|
| owns_render_frame_host_ = false;
|
| frame_id_ = kInvalidFrameId;
|
| current_url_ = GURL();
|
| +
|
| + // The children may not have been cleared if a cross-process navigation
|
| + // commits before the old process cleans everything up. Make sure the child
|
| + // nodes get deleted.
|
| children_.clear();
|
|
|
| render_frame_host_ = new_render_frame_host;
|
|
|