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 6d58505185807b14b61349d410857ce217e11ebf..0d1d03aa60eb246e0eae107162c62549fd8c3da6 100644 |
| --- a/content/browser/frame_host/navigator_impl.cc |
| +++ b/content/browser/frame_host/navigator_impl.cc |
| @@ -697,6 +697,17 @@ void NavigatorImpl::CommitNavigation(FrameTreeNode* frame_tree_node, |
| RenderFrameHostImpl* render_frame_host = |
| frame_tree_node->render_manager()->GetFrameHostForNavigation( |
| *navigation_request); |
| + |
| + // The renderer can exit view source mode when any error or cancellation |
| + // happen. When reusing the same renderer, overwrite to recover the mode. |
|
clamy
2015/03/26 16:15:13
Note that this cannot happen in GetFrameHostForNav
nasko
2015/03/26 20:46:31
Acknowledged.
|
| + if (navigation_request->is_view_source() && |
| + render_frame_host == |
| + frame_tree_node->render_manager()->current_frame_host()) { |
| + render_frame_host->render_view_host()->Send( |
|
nasko
2015/03/26 20:46:31
We should (D)CHECK here that the RFH is the top-le
clamy
2015/03/27 10:53:12
Done.
|
| + new ViewMsg_EnableViewSourceMode( |
| + render_frame_host->render_view_host()->GetRoutingID())); |
| + } |
| + |
| CheckWebUIRendererDoesNotDisplayNormalURL( |
| render_frame_host, navigation_request->common_params().url); |