| Index: content/browser/frame_host/render_frame_host_manager.cc
|
| diff --git a/content/browser/frame_host/render_frame_host_manager.cc b/content/browser/frame_host/render_frame_host_manager.cc
|
| index cd1684b769a1b7479a79e30536bf586b6eafeec9..7deebc26ad5c66724f6626cdfafd92d221b84879 100644
|
| --- a/content/browser/frame_host/render_frame_host_manager.cc
|
| +++ b/content/browser/frame_host/render_frame_host_manager.cc
|
| @@ -912,8 +912,12 @@ RenderFrameHostImpl* RenderFrameHostManager::GetFrameHostForNavigation(
|
| void RenderFrameHostManager::CleanUpNavigation() {
|
| CHECK(IsBrowserSideNavigationEnabled());
|
| render_frame_host_->ClearPendingWebUI();
|
| - if (speculative_render_frame_host_)
|
| + if (speculative_render_frame_host_) {
|
| + bool was_loading = speculative_render_frame_host_->is_loading();
|
| DiscardUnusedFrame(UnsetSpeculativeRenderFrameHost());
|
| + if (was_loading)
|
| + frame_tree_node_->DidStopLoading();
|
| + }
|
| }
|
|
|
| // PlzNavigate
|
| @@ -2002,6 +2006,7 @@ void RenderFrameHostManager::CommitPending() {
|
| // now to make sure the sad tab shows up, etc.
|
| DCHECK(!render_frame_host_->IsRenderFrameLive());
|
| DCHECK(!render_frame_host_->render_view_host()->IsRenderViewLive());
|
| + render_frame_host_->ResetLoadingState();
|
| delegate_->RenderProcessGoneFromRenderManager(
|
| render_frame_host_->render_view_host());
|
| }
|
| @@ -2253,7 +2258,11 @@ void RenderFrameHostManager::CancelPending() {
|
| TRACE_EVENT1("navigation", "RenderFrameHostManager::CancelPending",
|
| "FrameTreeNode id", frame_tree_node_->frame_tree_node_id());
|
| render_frame_host_->ClearPendingWebUI();
|
| +
|
| + bool pending_was_loading = pending_render_frame_host_->is_loading();
|
| DiscardUnusedFrame(UnsetPendingRenderFrameHost());
|
| + if (pending_was_loading)
|
| + frame_tree_node_->DidStopLoading();
|
| }
|
|
|
| scoped_ptr<RenderFrameHostImpl>
|
|
|