Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/browser/frame_host/navigator_impl.h" | 5 #include "content/browser/frame_host/navigator_impl.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/metrics/histogram_macros.h" | 10 #include "base/metrics/histogram_macros.h" |
| (...skipping 1005 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1016 NavigationRequest* navigation_request = frame_tree_node->navigation_request(); | 1016 NavigationRequest* navigation_request = frame_tree_node->navigation_request(); |
| 1017 DCHECK(navigation_request); | 1017 DCHECK(navigation_request); |
| 1018 | 1018 |
| 1019 // With PlzNavigate, debug URLs will give a failed navigation because the | 1019 // With PlzNavigate, debug URLs will give a failed navigation because the |
| 1020 // WebUI backend won't find a handler for them. They will be processed in the | 1020 // WebUI backend won't find a handler for them. They will be processed in the |
| 1021 // renderer, however do not discard the pending entry so that the URL bar | 1021 // renderer, however do not discard the pending entry so that the URL bar |
| 1022 // shows them correctly. | 1022 // shows them correctly. |
| 1023 if (!IsRendererDebugURL(navigation_request->navigation_handle()->GetURL())) | 1023 if (!IsRendererDebugURL(navigation_request->navigation_handle()->GetURL())) |
| 1024 DiscardPendingEntryIfNeeded(navigation_request->navigation_handle()); | 1024 DiscardPendingEntryIfNeeded(navigation_request->navigation_handle()); |
| 1025 | 1025 |
| 1026 // Select an appropriate renderer to show the error page. | |
| 1027 RenderFrameHostImpl* render_frame_host = | |
| 1028 frame_tree_node->render_manager()->GetFrameHostForNavigation( | |
| 1029 *navigation_request); | |
| 1030 | |
| 1026 // If the request was canceled by the user do not show an error page. | 1031 // If the request was canceled by the user do not show an error page. |
| 1027 if (error_code == net::ERR_ABORTED) { | 1032 if (error_code == net::ERR_ABORTED) { |
| 1033 render_frame_host->AbortNavigationRequest( | |
|
clamy
2017/02/08 17:13:34
How many tests fail without this? I'm not terribly
ananta
2017/02/08 23:02:19
Thanks. FrameLoader::stopAllLoaders() now sends fa
| |
| 1034 navigation_request->common_params().url, error_code); | |
| 1028 frame_tree_node->ResetNavigationRequest(false); | 1035 frame_tree_node->ResetNavigationRequest(false); |
| 1029 return; | 1036 return; |
| 1030 } | 1037 } |
| 1031 | 1038 |
| 1032 // Select an appropriate renderer to show the error page. | |
| 1033 RenderFrameHostImpl* render_frame_host = | |
| 1034 frame_tree_node->render_manager()->GetFrameHostForNavigation( | |
| 1035 *navigation_request); | |
| 1036 CheckWebUIRendererDoesNotDisplayNormalURL( | 1039 CheckWebUIRendererDoesNotDisplayNormalURL( |
| 1037 render_frame_host, navigation_request->common_params().url); | 1040 render_frame_host, navigation_request->common_params().url); |
| 1038 | 1041 |
| 1039 navigation_request->TransferNavigationHandleOwnership(render_frame_host); | 1042 navigation_request->TransferNavigationHandleOwnership(render_frame_host); |
| 1040 render_frame_host->navigation_handle()->ReadyToCommitNavigation( | 1043 render_frame_host->navigation_handle()->ReadyToCommitNavigation( |
| 1041 render_frame_host); | 1044 render_frame_host); |
| 1042 render_frame_host->FailedNavigation(navigation_request->common_params(), | 1045 render_frame_host->FailedNavigation(navigation_request->common_params(), |
| 1043 navigation_request->request_params(), | 1046 navigation_request->request_params(), |
| 1044 has_stale_copy_in_cache, error_code); | 1047 has_stale_copy_in_cache, error_code); |
| 1045 } | 1048 } |
| (...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1280 if (navigation_handle) | 1283 if (navigation_handle) |
| 1281 navigation_handle->update_entry_id_for_transfer(entry->GetUniqueID()); | 1284 navigation_handle->update_entry_id_for_transfer(entry->GetUniqueID()); |
| 1282 | 1285 |
| 1283 controller_->SetPendingEntry(std::move(entry)); | 1286 controller_->SetPendingEntry(std::move(entry)); |
| 1284 if (delegate_) | 1287 if (delegate_) |
| 1285 delegate_->NotifyChangedNavigationState(content::INVALIDATE_TYPE_URL); | 1288 delegate_->NotifyChangedNavigationState(content::INVALIDATE_TYPE_URL); |
| 1286 } | 1289 } |
| 1287 } | 1290 } |
| 1288 | 1291 |
| 1289 } // namespace content | 1292 } // namespace content |
| OLD | NEW |