diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/bindings/core/v8/referrer_script_info.h')
-rw-r--r-- | chromium/third_party/blink/renderer/bindings/core/v8/referrer_script_info.h | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/chromium/third_party/blink/renderer/bindings/core/v8/referrer_script_info.h b/chromium/third_party/blink/renderer/bindings/core/v8/referrer_script_info.h index 84ed3667786..279ac3ab4a0 100644 --- a/chromium/third_party/blink/renderer/bindings/core/v8/referrer_script_info.h +++ b/chromium/third_party/blink/renderer/bindings/core/v8/referrer_script_info.h @@ -23,23 +23,33 @@ class CORE_EXPORT ReferrerScriptInfo { STACK_ALLOCATED(); public: + enum class BaseUrlSource { + kClassicScriptCORSSameOrigin, + kClassicScriptCORSCrossOrigin, + kOther + }; ReferrerScriptInfo() {} ReferrerScriptInfo(const KURL& base_url, network::mojom::CredentialsMode credentials_mode, const String& nonce, ParserDisposition parser_state, - network::mojom::ReferrerPolicy referrer_policy) + network::mojom::ReferrerPolicy referrer_policy, + BaseUrlSource base_url_source) : base_url_(base_url), credentials_mode_(credentials_mode), nonce_(nonce), parser_state_(parser_state), - referrer_policy_(referrer_policy) {} - ReferrerScriptInfo(const KURL& base_url, const ScriptFetchOptions& options) + referrer_policy_(referrer_policy), + base_url_source_(base_url_source) {} + ReferrerScriptInfo(const KURL& base_url, + const ScriptFetchOptions& options, + BaseUrlSource base_url_source) : ReferrerScriptInfo(base_url, options.CredentialsMode(), options.Nonce(), options.ParserState(), - options.GetReferrerPolicy()) {} + options.GetReferrerPolicy(), + base_url_source) {} static ReferrerScriptInfo FromV8HostDefinedOptions( v8::Local<v8::Context>, @@ -55,11 +65,13 @@ class CORE_EXPORT ReferrerScriptInfo { network::mojom::ReferrerPolicy GetReferrerPolicy() const { return referrer_policy_; } + BaseUrlSource GetBaseUrlSource() const { return base_url_source_; } bool IsDefaultValue() const { return base_url_.IsNull() && credentials_mode_ == network::mojom::CredentialsMode::kSameOrigin && - nonce_.IsEmpty() && parser_state_ == kNotParserInserted; + nonce_.IsEmpty() && parser_state_ == kNotParserInserted && + base_url_source_ == BaseUrlSource::kOther; } private: @@ -90,6 +102,9 @@ class CORE_EXPORT ReferrerScriptInfo { // https://html.spec.whatwg.org/C/#default-classic-script-fetch-options const network::mojom::ReferrerPolicy referrer_policy_ = network::mojom::ReferrerPolicy::kDefault; + + // Temporary flag to collect UMA for crbug.com/1082086. + const BaseUrlSource base_url_source_ = BaseUrlSource::kOther; }; } // namespace blink |