diff options
Diffstat (limited to 'chrome/renderer/render_view.cc')
-rw-r--r-- | chrome/renderer/render_view.cc | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/chrome/renderer/render_view.cc b/chrome/renderer/render_view.cc index 09c3436..45e2c37 100644 --- a/chrome/renderer/render_view.cc +++ b/chrome/renderer/render_view.cc @@ -2875,13 +2875,20 @@ void RenderView::didReceiveResponse( if (frame->isViewSourceModeEnabled()) return; + NavigationState* navigation_state = + NavigationState::FromDataSource(frame->provisionalDataSource()); + CHECK(navigation_state); + // Record that this was a page loaded over SPDY. if (response.wasFetchedViaSPDY()) { - NavigationState* navigation_state = - NavigationState::FromDataSource(frame->provisionalDataSource()); navigation_state->set_was_fetched_via_spdy(true); } + // Record that npn protocol was negotiated when fetching this page. + if (response.wasNpnNegotiated()) { + navigation_state->set_was_npn_negotiated(true); + } + // Consider loading an alternate error page for 404 responses. if (response.httpStatusCode() != 404) return; @@ -2890,8 +2897,6 @@ void RenderView::didReceiveResponse( if (!GetAlternateErrorPageURL(response.url(), HTTP_404).is_valid()) return; - NavigationState* navigation_state = - NavigationState::FromDataSource(frame->provisionalDataSource()); navigation_state->set_postpone_loading_data(true); navigation_state->clear_postponed_data(); } @@ -4556,6 +4561,27 @@ void RenderView::DumpLoadHistograms() const { begin_to_finish_doc, kBeginToFinishDocMin, kBeginToFinishDocMax, kBeginToFinishDocBucketCount); + static bool use_spdy_histogram(FieldTrialList::Find("SpdyImpact") && + !FieldTrialList::Find("SpdyImpact")->group_name().empty()); + if (use_spdy_histogram) { + switch (load_type) { + case NavigationState::LINK_LOAD_NORMAL: + if (navigation_state->was_npn_negotiated()) { + DCHECK(FieldTrialList::Find("SpdyImpact")->group_name() == + "_npn_with_http" || + FieldTrialList::Find("SpdyImpact")->group_name() == + "_npn_with_spdy"); + UMA_HISTOGRAM_CUSTOM_TIMES(FieldTrial::MakeName( + "Renderer4.BeginToFinish_LinkLoadNormal_SpdyTrial", "SpdyImpact"), + begin_to_finish, kBeginToFinishMin, kBeginToFinishMax, + kBeginToFinishBucketCount); + } + break; + default: + break; + } + } + UMA_HISTOGRAM_CUSTOM_TIMES("Renderer4.StartToFinish", finish - start, kBeginToFinishMin, kBeginToFinishMax, kBeginToFinishBucketCount); |