diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2021-09-03 13:32:17 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2021-10-01 14:31:55 +0200 |
commit | 21ba0c5d4bf8fba15dddd97cd693bad2358b77fd (patch) | |
tree | 91be119f694044dfc1ff9fdc054459e925de9df0 /chromium/third_party/blink/renderer/core/url | |
parent | 03c549e0392f92c02536d3f86d5e1d8dfa3435ac (diff) | |
download | qtwebengine-chromium-21ba0c5d4bf8fba15dddd97cd693bad2358b77fd.tar.gz |
BASELINE: Update Chromium to 92.0.4515.166
Change-Id: I42a050486714e9e54fc271f2a8939223a02ae364
Diffstat (limited to 'chromium/third_party/blink/renderer/core/url')
-rw-r--r-- | chromium/third_party/blink/renderer/core/url/url_search_params.cc | 24 | ||||
-rw-r--r-- | chromium/third_party/blink/renderer/core/url/url_search_params.h | 14 |
2 files changed, 37 insertions, 1 deletions
diff --git a/chromium/third_party/blink/renderer/core/url/url_search_params.cc b/chromium/third_party/blink/renderer/core/url/url_search_params.cc index 25d1cd3e31d..bb45d24aef0 100644 --- a/chromium/third_party/blink/renderer/core/url/url_search_params.cc +++ b/chromium/third_party/blink/renderer/core/url/url_search_params.cc @@ -7,6 +7,7 @@ #include <algorithm> #include <utility> +#include "third_party/blink/renderer/bindings/core/v8/v8_union_usvstring_usvstringsequencesequence_usvstringusvstringrecord.h" #include "third_party/blink/renderer/core/url/dom_url.h" #include "third_party/blink/renderer/platform/bindings/exception_messages.h" #include "third_party/blink/renderer/platform/network/form_data_encoder.h" @@ -53,6 +54,28 @@ bool CompareParams(const std::pair<String, String>& a, } // namespace +#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) +URLSearchParams* URLSearchParams::Create(const URLSearchParamsInit* init, + ExceptionState& exception_state) { + DCHECK(init); + switch (init->GetContentType()) { + case URLSearchParamsInit::ContentType::kUSVString: { + const String& query_string = init->GetAsUSVString(); + if (query_string.StartsWith('?')) + return MakeGarbageCollected<URLSearchParams>(query_string.Substring(1)); + return MakeGarbageCollected<URLSearchParams>(query_string); + } + case URLSearchParamsInit::ContentType::kUSVStringSequenceSequence: + return URLSearchParams::Create(init->GetAsUSVStringSequenceSequence(), + exception_state); + case URLSearchParamsInit::ContentType::kUSVStringUSVStringRecord: + return URLSearchParams::Create(init->GetAsUSVStringUSVStringRecord(), + exception_state); + } + NOTREACHED(); + return nullptr; +} +#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) URLSearchParams* URLSearchParams::Create(const URLSearchParamsInit& init, ExceptionState& exception_state) { if (init.IsUSVString()) { @@ -73,6 +96,7 @@ URLSearchParams* URLSearchParams::Create(const URLSearchParamsInit& init, DCHECK(init.IsNull()); return MakeGarbageCollected<URLSearchParams>(String()); } +#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) URLSearchParams* URLSearchParams::Create(const Vector<Vector<String>>& init, ExceptionState& exception_state) { diff --git a/chromium/third_party/blink/renderer/core/url/url_search_params.h b/chromium/third_party/blink/renderer/core/url/url_search_params.h index 958c41b7a34..7a12e95feec 100644 --- a/chromium/third_party/blink/renderer/core/url/url_search_params.h +++ b/chromium/third_party/blink/renderer/core/url/url_search_params.h @@ -7,6 +7,7 @@ #include <utility> +#include "base/dcheck_is_on.h" #include "base/gtest_prod_util.h" #include "third_party/blink/renderer/bindings/core/v8/iterable.h" #include "third_party/blink/renderer/bindings/core/v8/usv_string_sequence_sequence_or_usv_string_usv_string_record_or_usv_string.h" @@ -18,18 +19,29 @@ namespace blink { -class ExceptionState; class DOMURL; +class ExceptionState; +class V8UnionUSVStringOrUSVStringSequenceSequenceOrUSVStringUSVStringRecord; +#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) +using URLSearchParamsInit = + V8UnionUSVStringOrUSVStringSequenceSequenceOrUSVStringUSVStringRecord; +#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) typedef USVStringSequenceSequenceOrUSVStringUSVStringRecordOrUSVString URLSearchParamsInit; +#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) class CORE_EXPORT URLSearchParams final : public ScriptWrappable, public PairIterable<String, String> { DEFINE_WRAPPERTYPEINFO(); public: +#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) + static URLSearchParams* Create(const URLSearchParamsInit* init, + ExceptionState& exception_state); +#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) static URLSearchParams* Create(const URLSearchParamsInit&, ExceptionState&); +#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) static URLSearchParams* Create(const Vector<std::pair<String, String>>&, ExceptionState&); static URLSearchParams* Create(const Vector<Vector<String>>&, |