Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index d28c0f4b6e3516e18495da49345c426bce1be7f9..509e577b7a809d4f94b07176284af11b8b7ef499 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -3449,19 +3449,19 @@ void RenderFrameImpl::didCreateDataSource(blink::WebLocalFrame* frame, |
content_initiated)); |
} |
-void RenderFrameImpl::didStartProvisionalLoad(blink::WebLocalFrame* frame) { |
+void RenderFrameImpl::didStartProvisionalLoad( |
+ blink::WebLocalFrame* frame, |
+ blink::WebDataSource* data_source) { |
DCHECK_EQ(frame_, frame); |
- WebDataSource* ds = frame->provisionalDataSource(); |
- |
// In fast/loader/stop-provisional-loads.html, we abort the load before this |
// callback is invoked. |
- if (!ds) |
+ if (!data_source) |
return; |
TRACE_EVENT2("navigation,benchmark,rail", |
"RenderFrameImpl::didStartProvisionalLoad", "id", routing_id_, |
- "url", ds->getRequest().url().string().utf8()); |
- DocumentState* document_state = DocumentState::FromDataSource(ds); |
+ "url", data_source->getRequest().url().string().utf8()); |
+ DocumentState* document_state = DocumentState::FromDataSource(data_source); |
NavigationStateImpl* navigation_state = static_cast<NavigationStateImpl*>( |
document_state->navigation_state()); |
bool is_top_most = !frame->parent(); |
@@ -3469,7 +3469,7 @@ void RenderFrameImpl::didStartProvisionalLoad(blink::WebLocalFrame* frame) { |
render_view_->set_navigation_gesture( |
WebUserGestureIndicator::isProcessingUserGesture() ? |
NavigationGestureUser : NavigationGestureAuto); |
- } else if (ds->replacesCurrentHistoryItem()) { |
+ } else if (data_source->replacesCurrentHistoryItem()) { |
// Subframe navigations that don't add session history items must be |
// marked with AUTO_SUBFRAME. See also didFailProvisionalLoad for how we |
// handle loading of error pages. |
@@ -3483,10 +3483,10 @@ void RenderFrameImpl::didStartProvisionalLoad(blink::WebLocalFrame* frame) { |
for (auto& observer : render_view_->observers()) |
observer.DidStartProvisionalLoad(frame); |
for (auto& observer : observers_) |
- observer.DidStartProvisionalLoad(); |
+ observer.DidStartProvisionalLoad(data_source); |
Send(new FrameHostMsg_DidStartProvisionalLoad( |
- routing_id_, ds->getRequest().url(), navigation_start)); |
+ routing_id_, data_source->getRequest().url(), navigation_start)); |
} |
void RenderFrameImpl::didReceiveServerRedirectForProvisionalLoad( |