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 0bbd2bd8e2d9a66b137070062ad681c8fc9482ec..6058b228bd712aca0b4b4bcc4ac31c5a7c4ff020 100644 |
| --- a/content/browser/frame_host/navigator_impl.cc |
| +++ b/content/browser/frame_host/navigator_impl.cc |
| @@ -177,6 +177,16 @@ void NavigatorImpl::DidFailProvisionalLoadWithError( |
| << ", showing_repost_interstitial: " << |
| params.showing_repost_interstitial |
| << ", frame_id: " << render_frame_host->GetRoutingID(); |
| + if (controller_->GetPendingEntry() && params.nav_entry_id != 0 && |
|
mnaganov (inactive)
2015/04/22 09:29:03
This change is causing ClientOnPageFinishedTest#te
Avi (use Gerrit)
2015/04/22 18:31:50
Ah. I will look into this, and will call out when
|
| + controller_->GetPendingEntry()->GetUniqueID() != params.nav_entry_id) { |
| + // If this failure is browser-initiated but isn't that of the pending entry, |
| + // ignore it. This can happen if there is an outstanding request that never |
| + // committed, and then a user makes a new request. In that case the new |
| + // request will be the pending entry, and the attempt to load the new |
| + // request will cause a failure message from the old request. |
| + return; |
| + } |
| + |
| GURL validated_url(params.url); |
| RenderProcessHost* render_process_host = render_frame_host->GetProcess(); |
| render_process_host->FilterURL(false, &validated_url); |