summaryrefslogtreecommitdiff
path: root/chromium/weblayer/browser/navigation_impl.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-12 14:27:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:35:20 +0000
commitc30a6232df03e1efbd9f3b226777b07e087a1122 (patch)
treee992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/weblayer/browser/navigation_impl.cc
parent7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff)
downloadqtwebengine-chromium-85-based.tar.gz
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/weblayer/browser/navigation_impl.cc')
-rw-r--r--chromium/weblayer/browser/navigation_impl.cc14
1 files changed, 12 insertions, 2 deletions
diff --git a/chromium/weblayer/browser/navigation_impl.cc b/chromium/weblayer/browser/navigation_impl.cc
index 211f2f0e877..e160069f225 100644
--- a/chromium/weblayer/browser/navigation_impl.cc
+++ b/chromium/weblayer/browser/navigation_impl.cc
@@ -9,6 +9,7 @@
#include "net/base/net_errors.h"
#include "net/http/http_util.h"
#include "third_party/blink/public/common/user_agent/user_agent_metadata.h"
+#include "third_party/blink/public/mojom/referrer.mojom.h"
#if defined(OS_ANDROID)
#include "base/android/jni_array.h"
@@ -150,8 +151,17 @@ Navigation::LoadError NavigationImpl::GetLoadError() {
void NavigationImpl::SetRequestHeader(const std::string& name,
const std::string& value) {
- // Any headers coming from the client should be exempt from CORS checks.
- navigation_handle_->SetCorsExemptRequestHeader(name, value);
+ if (base::ToLowerASCII(name) == "referer") {
+ // The referrer needs to be special cased as content maintains it
+ // separately.
+ auto referrer = blink::mojom::Referrer::New();
+ referrer->url = GURL(value);
+ referrer->policy = network::mojom::ReferrerPolicy::kDefault;
+ navigation_handle_->SetReferrer(std::move(referrer));
+ } else {
+ // Any headers coming from the client should be exempt from CORS checks.
+ navigation_handle_->SetCorsExemptRequestHeader(name, value);
+ }
}
void NavigationImpl::SetUserAgentString(const std::string& value) {