From c30a6232df03e1efbd9f3b226777b07e087a1122 Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Mon, 12 Oct 2020 14:27:29 +0200 Subject: BASELINE: Update Chromium to 85.0.4183.140 Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen --- chromium/weblayer/browser/navigation_impl.cc | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'chromium/weblayer/browser/navigation_impl.cc') 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) { -- cgit v1.2.1