| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index fbd8279f491e1b8f8686c548166e01c4fa128fa0..83ed43884933d65f13337a59430a0195f6aa92ad 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -4829,6 +4829,8 @@ void RenderFrameImpl::OnCommitNavigation(
|
| new StreamOverrideParameters());
|
| stream_override->stream_url = stream_url;
|
| stream_override->response = response;
|
| + stream_override->redirects = request_params.redirects;
|
| + stream_override->redirect_responses = request_params.resource_response_infos;
|
|
|
| NavigateInternal(common_params, StartNavigationParams(), request_params,
|
| std::move(stream_override));
|
| @@ -5470,11 +5472,18 @@ void RenderFrameImpl::NavigateInternal(
|
| request.setHasUserGesture(start_params.has_user_gesture);
|
| #endif
|
|
|
| - // PlzNavigate: Make sure that Blink's loader will not try to use browser side
|
| - // navigation for this request (since it already went to the browser).
|
| - if (browser_side_navigation)
|
| + if (browser_side_navigation) {
|
| + // PlzNavigate: Make sure that Blink's loader will not try to use browser
|
| + // side navigation for this request (since it already went to the browser).
|
| request.setCheckForBrowserSideNavigation(false);
|
|
|
| + request.setNavigationStartTime(
|
| + (common_params.navigation_start - base::TimeTicks()).InSecondsF());
|
| +
|
| + if (!request_params.redirects.empty())
|
| + request.setInitialURL(request_params.redirects.front());
|
| + }
|
| +
|
| // If we are reloading, then use the history state of the current frame.
|
| // Otherwise, if we have history state, then we need to navigate to it, which
|
| // corresponds to a back/forward navigation event. Update the parameters
|
|
|