| 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 13f2efa1f5c92c054e070da9e1d5590ecf05172b..d6ac418ebe47f48e932a2586a535d63b922cdaf3 100644
|
| --- a/content/browser/frame_host/navigator_impl.cc
|
| +++ b/content/browser/frame_host/navigator_impl.cc
|
| @@ -702,6 +702,18 @@ 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.
|
| + if (navigation_request->is_view_source() &&
|
| + render_frame_host ==
|
| + frame_tree_node->render_manager()->current_frame_host()) {
|
| + DCHECK(!render_frame_host->GetParent());
|
| + render_frame_host->render_view_host()->Send(
|
| + new ViewMsg_EnableViewSourceMode(
|
| + render_frame_host->render_view_host()->GetRoutingID()));
|
| + }
|
| +
|
| CheckWebUIRendererDoesNotDisplayNormalURL(
|
| render_frame_host, navigation_request->common_params().url);
|
|
|
|
|