| Index: content/browser/frame_host/navigation_handle_impl.cc
|
| diff --git a/content/browser/frame_host/navigation_handle_impl.cc b/content/browser/frame_host/navigation_handle_impl.cc
|
| index 16ae7a2fe3245fb3bc7cebced866bf43d42b180b..eba07da522c327c1ceb5d2da68d6918584214342 100644
|
| --- a/content/browser/frame_host/navigation_handle_impl.cc
|
| +++ b/content/browser/frame_host/navigation_handle_impl.cc
|
| @@ -28,6 +28,7 @@
|
| #include "content/public/common/browser_side_navigation_policy.h"
|
| #include "content/public/common/content_client.h"
|
| #include "content/public/common/url_constants.h"
|
| +#include "net/base/net_errors.h"
|
| #include "net/url_request/redirect_info.h"
|
| #include "url/gurl.h"
|
| #include "url/url_constants.h"
|
| @@ -677,12 +678,18 @@ bool NavigationHandleImpl::MaybeTransferAndProceed() {
|
|
|
| // Inform observers that the navigation is now ready to commit, unless a
|
| // transfer of the navigation failed.
|
| - ReadyToCommitNavigation(render_frame_host_);
|
| + // PlzNavigate: when a navigation is not set to commit (204/205s/downloads) do
|
| + // not call ReadyToCommitNavigation.
|
| + DCHECK(!IsBrowserSideNavigationEnabled() || render_frame_host_ ||
|
| + net_error_code_ == net::ERR_ABORTED);
|
| + if (!IsBrowserSideNavigationEnabled() || render_frame_host_)
|
| + ReadyToCommitNavigation(render_frame_host_);
|
| return true;
|
| }
|
|
|
| bool NavigationHandleImpl::MaybeTransferAndProceedInternal() {
|
| - DCHECK(render_frame_host_);
|
| + DCHECK(render_frame_host_ || (IsBrowserSideNavigationEnabled() &&
|
| + net_error_code_ == net::ERR_ABORTED));
|
|
|
| // PlzNavigate: the final RenderFrameHost handling this navigation has been
|
| // decided before calling WillProcessResponse in
|
|
|