OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/renderer/render_view_impl.h" | 5 #include "content/renderer/render_view_impl.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <cmath> | 8 #include <cmath> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 3129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3140 ¶ms.error_description); | 3140 ¶ms.error_description); |
3141 params.url = error.unreachableURL; | 3141 params.url = error.unreachableURL; |
3142 params.showing_repost_interstitial = show_repost_interstitial; | 3142 params.showing_repost_interstitial = show_repost_interstitial; |
3143 Send(new ViewHostMsg_DidFailProvisionalLoadWithError( | 3143 Send(new ViewHostMsg_DidFailProvisionalLoadWithError( |
3144 routing_id_, params)); | 3144 routing_id_, params)); |
3145 | 3145 |
3146 // Don't display an error page if this is simply a cancelled load. Aside | 3146 // Don't display an error page if this is simply a cancelled load. Aside |
3147 // from being dumb, WebCore doesn't expect it and it will cause a crash. | 3147 // from being dumb, WebCore doesn't expect it and it will cause a crash. |
3148 if (error.reason == net::ERR_ABORTED) | 3148 if (error.reason == net::ERR_ABORTED) |
3149 return; | 3149 return; |
3150 // Don't display an error message if the request was handled by an | |
3151 // external protocol handler. | |
3152 if (error.reason == net::ERR_UNKNOWN_URL_SCHEME) | |
3153 return; | |
3154 | 3150 |
3155 // Make sure we never show errors in view source mode. | 3151 // Make sure we never show errors in view source mode. |
3156 frame->enableViewSourceMode(false); | 3152 frame->enableViewSourceMode(false); |
3157 | 3153 |
3158 DocumentState* document_state = DocumentState::FromDataSource(ds); | 3154 DocumentState* document_state = DocumentState::FromDataSource(ds); |
3159 NavigationState* navigation_state = document_state->navigation_state(); | 3155 NavigationState* navigation_state = document_state->navigation_state(); |
3160 | 3156 |
3161 // If this is a failed back/forward/reload navigation, then we need to do a | 3157 // If this is a failed back/forward/reload navigation, then we need to do a |
3162 // 'replace' load. This is necessary to avoid messing up session history. | 3158 // 'replace' load. This is necessary to avoid messing up session history. |
3163 // Otherwise, we do a normal load, which simulates a 'go' navigation as far | 3159 // Otherwise, we do a normal load, which simulates a 'go' navigation as far |
(...skipping 2955 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6119 | 6115 |
6120 updating_frame_tree_ = true; | 6116 updating_frame_tree_ = true; |
6121 active_frame_id_map_.clear(); | 6117 active_frame_id_map_.clear(); |
6122 | 6118 |
6123 target_process_id_ = process_id; | 6119 target_process_id_ = process_id; |
6124 target_routing_id_ = route_id; | 6120 target_routing_id_ = route_id; |
6125 CreateFrameTree(webview()->mainFrame(), frames); | 6121 CreateFrameTree(webview()->mainFrame(), frames); |
6126 | 6122 |
6127 updating_frame_tree_ = false; | 6123 updating_frame_tree_ = false; |
6128 } | 6124 } |
OLD | NEW |