Index: chrome/renderer/render_view.cc |
=================================================================== |
--- chrome/renderer/render_view.cc (revision 75533) |
+++ chrome/renderer/render_view.cc (working copy) |
@@ -146,6 +146,7 @@ |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebScriptSource.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebSearchableFormData.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebSecurityOrigin.h" |
+#include "third_party/WebKit/Source/WebKit/chromium/public/WebSecurityPolicy.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebSettings.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebSize.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebStorageNamespace.h" |
@@ -258,6 +259,7 @@ |
using WebKit::WebScriptSource; |
using WebKit::WebSearchableFormData; |
using WebKit::WebSecurityOrigin; |
+using WebKit::WebSecurityPolicy; |
using WebKit::WebSettings; |
using WebKit::WebSharedWorker; |
using WebKit::WebSize; |
@@ -1407,7 +1409,12 @@ |
if (main_frame->isViewSourceModeEnabled()) |
request.setCachePolicy(WebURLRequest::ReturnCacheDataElseLoad); |
+ |
if (params.referrer.is_valid()) { |
+ bool hide_referrer = WebSecurityPolicy::shouldHideReferrer( |
+ params.url, |
+ WebString::fromUTF8(params.referrer.spec())); |
+ if (!hide_referrer) |
request.setHTTPHeaderField(WebString::fromUTF8("Referer"), |
WebString::fromUTF8(params.referrer.spec())); |
} |