Chromium Code Reviews| Index: content/browser/frame_host/navigator_impl.cc |
| diff --git a/content/browser/frame_host/navigator_impl.cc b/content/browser/frame_host/navigator_impl.cc |
| index ad1a19a5eb33de3be38b9eb3335cf595e60c6f51..d0727647b7227f634677049a80df68bd990b0c2e 100644 |
| --- a/content/browser/frame_host/navigator_impl.cc |
| +++ b/content/browser/frame_host/navigator_impl.cc |
| @@ -1011,7 +1011,8 @@ void NavigatorImpl::OnBeginNavigation( |
| RenderFrameHost* current_frame_host = |
| frame_tree_node->render_manager()->current_frame_host(); |
| current_frame_host->Send( |
| - new FrameMsg_Stop(current_frame_host->GetRoutingID())); |
| + new FrameMsg_DroppedNavigation(current_frame_host->GetRoutingID(), |
| + begin_params.renderer_navigation_id)); |
| return; |
| } |
| @@ -1046,6 +1047,20 @@ void NavigatorImpl::OnBeginNavigation( |
| navigation_request->BeginNavigation(); |
| } |
| +void NavigatorImpl::OnAbortNavigation(FrameTreeNode* frame_tree_node) { |
| + DCHECK(frame_tree_node); |
|
Charlie Reis
2017/03/20 06:34:44
nit: This seems unnecessary. It doesn't seem like
clamy
2017/03/20 14:56:22
Done.
|
| + |
| + NavigationRequest* ongoing_navigation_request = |
| + frame_tree_node->navigation_request(); |
| + if (!ongoing_navigation_request || |
|
Charlie Reis
2017/03/20 06:34:44
What happens if we've already sent the CommitNavig
clamy
2017/03/20 14:56:22
The ongoing navigation request will no longer exis
Charlie Reis
2017/03/20 23:02:49
Great, that's a bit simpler.
|
| + ongoing_navigation_request->browser_initiated()) { |
|
Charlie Reis
2017/03/20 06:34:44
The case we're looking at seems really similar to
clamy
2017/03/20 14:56:22
The existing behavior is that document.write will
Charlie Reis
2017/03/20 23:02:49
It only bothered me in the number of different pol
|
| + return; |
| + } |
| + |
| + // Abort the renderer-initiated navigation request. |
| + CancelNavigation(frame_tree_node); |
| +} |
| + |
| // PlzNavigate |
| void NavigatorImpl::CancelNavigation(FrameTreeNode* frame_tree_node) { |
| CHECK(IsBrowserSideNavigationEnabled()); |