Index: chrome/browser/net/chrome_network_delegate.cc |
diff --git a/chrome/browser/net/chrome_network_delegate.cc b/chrome/browser/net/chrome_network_delegate.cc |
index 77abac00de1b6e2699cf068e2e6d57f191d015f6..65c411de45be7c48c1a8b691fa5e20cf8e586f57 100644 |
--- a/chrome/browser/net/chrome_network_delegate.cc |
+++ b/chrome/browser/net/chrome_network_delegate.cc |
@@ -12,6 +12,7 @@ |
#include "base/debug/trace_event.h" |
#include "base/logging.h" |
#include "base/metrics/histogram.h" |
+#include "base/metrics/user_metrics.h" |
#include "base/path_service.h" |
#include "base/prefs/pref_member.h" |
#include "base/prefs/pref_service.h" |
@@ -233,6 +234,12 @@ void RecordIOThreadToRequestStartOnUIThread( |
} |
#endif // defined(OS_ANDROID) |
+void ReportInvalidReferrerSend(const GURL& target_url, |
+ const GURL& referrer_url) { |
+ base::RecordAction( |
+ base::UserMetricsAction("Net.URLRequest_StartJob_InvalidReferrer")); |
+} |
+ |
} // namespace |
ChromeNetworkDelegate::ChromeNetworkDelegate( |
@@ -811,6 +818,15 @@ int ChromeNetworkDelegate::OnBeforeSocketStreamConnect( |
return net::OK; |
} |
+bool ChromeNetworkDelegate::OnCanCorrectInvalidReferrerHeader( |
+ const net::URLRequest& request, |
+ const GURL& target_url, |
+ const GURL& referrer_url) const { |
+ BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, |
+ base::Bind(&ReportInvalidReferrerSend, target_url, referrer_url)); |
+ return false; |
mmenke
2014/09/16 15:53:57
Should we only do this for RDH-tracked requests?
|
+} |
+ |
void ChromeNetworkDelegate::AccumulateContentLength( |
int64 received_content_length, |
int64 original_content_length, |