зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1614359 - Remove explicit initialization from Headers in Headers constructor. r=Ehsan
The Web IDL type for HeadersInit didn't match the definition in http://fetch.spec.whatwg.org/#headers-class. The headers-basic tests makes it clear that this difference is observable. Differential Revision: https://phabricator.services.mozilla.com/D62489 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
bcdb4a30ed
Коммит
9121200eb8
|
@ -25,8 +25,8 @@ NS_INTERFACE_MAP_END
|
|||
// static
|
||||
already_AddRefed<Headers> Headers::Constructor(
|
||||
const GlobalObject& aGlobal,
|
||||
const Optional<
|
||||
HeadersOrByteStringSequenceSequenceOrByteStringByteStringRecord>& aInit,
|
||||
const Optional<ByteStringSequenceSequenceOrByteStringByteStringRecord>&
|
||||
aInit,
|
||||
ErrorResult& aRv) {
|
||||
RefPtr<InternalHeaders> ih = new InternalHeaders();
|
||||
RefPtr<Headers> headers = new Headers(aGlobal.GetAsSupports(), ih);
|
||||
|
@ -35,9 +35,7 @@ already_AddRefed<Headers> Headers::Constructor(
|
|||
return headers.forget();
|
||||
}
|
||||
|
||||
if (aInit.Value().IsHeaders()) {
|
||||
ih->Fill(*aInit.Value().GetAsHeaders().mInternalHeaders, aRv);
|
||||
} else if (aInit.Value().IsByteStringSequenceSequence()) {
|
||||
if (aInit.Value().IsByteStringSequenceSequence()) {
|
||||
ih->Fill(aInit.Value().GetAsByteStringSequenceSequence(), aRv);
|
||||
} else if (aInit.Value().IsByteStringByteStringRecord()) {
|
||||
ih->Fill(aInit.Value().GetAsByteStringByteStringRecord(), aRv);
|
||||
|
@ -53,8 +51,7 @@ already_AddRefed<Headers> Headers::Constructor(
|
|||
// static
|
||||
already_AddRefed<Headers> Headers::Constructor(
|
||||
const GlobalObject& aGlobal,
|
||||
const OwningHeadersOrByteStringSequenceSequenceOrByteStringByteStringRecord&
|
||||
aInit,
|
||||
const OwningByteStringSequenceSequenceOrByteStringByteStringRecord& aInit,
|
||||
ErrorResult& aRv) {
|
||||
nsCOMPtr<nsIGlobalObject> global = do_QueryInterface(aGlobal.GetAsSupports());
|
||||
return Create(global, aInit, aRv);
|
||||
|
@ -63,15 +60,12 @@ already_AddRefed<Headers> Headers::Constructor(
|
|||
/* static */
|
||||
already_AddRefed<Headers> Headers::Create(
|
||||
nsIGlobalObject* aGlobal,
|
||||
const OwningHeadersOrByteStringSequenceSequenceOrByteStringByteStringRecord&
|
||||
aInit,
|
||||
const OwningByteStringSequenceSequenceOrByteStringByteStringRecord& aInit,
|
||||
ErrorResult& aRv) {
|
||||
RefPtr<InternalHeaders> ih = new InternalHeaders();
|
||||
RefPtr<Headers> headers = new Headers(aGlobal, ih);
|
||||
|
||||
if (aInit.IsHeaders()) {
|
||||
ih->Fill(*(aInit.GetAsHeaders().get()->mInternalHeaders), aRv);
|
||||
} else if (aInit.IsByteStringSequenceSequence()) {
|
||||
if (aInit.IsByteStringSequenceSequence()) {
|
||||
ih->Fill(aInit.GetAsByteStringSequenceSequence(), aRv);
|
||||
} else if (aInit.IsByteStringByteStringRecord()) {
|
||||
ih->Fill(aInit.GetAsByteStringByteStringRecord(), aRv);
|
||||
|
|
|
@ -22,8 +22,8 @@ namespace dom {
|
|||
|
||||
template <typename K, typename V>
|
||||
class Record;
|
||||
class HeadersOrByteStringSequenceSequenceOrByteStringByteStringRecord;
|
||||
class OwningHeadersOrByteStringSequenceSequenceOrByteStringByteStringRecord;
|
||||
class ByteStringSequenceSequenceOrByteStringByteStringRecord;
|
||||
class OwningByteStringSequenceSequenceOrByteStringByteStringRecord;
|
||||
|
||||
/**
|
||||
* This Headers class is only used to represent the content facing Headers
|
||||
|
@ -53,21 +53,18 @@ class Headers final : public nsISupports, public nsWrapperCache {
|
|||
|
||||
static already_AddRefed<Headers> Constructor(
|
||||
const GlobalObject& aGlobal,
|
||||
const Optional<
|
||||
HeadersOrByteStringSequenceSequenceOrByteStringByteStringRecord>&
|
||||
const Optional<ByteStringSequenceSequenceOrByteStringByteStringRecord>&
|
||||
aInit,
|
||||
ErrorResult& aRv);
|
||||
|
||||
static already_AddRefed<Headers> Constructor(
|
||||
const GlobalObject& aGlobal,
|
||||
const OwningHeadersOrByteStringSequenceSequenceOrByteStringByteStringRecord&
|
||||
aInit,
|
||||
const OwningByteStringSequenceSequenceOrByteStringByteStringRecord& aInit,
|
||||
ErrorResult& aRv);
|
||||
|
||||
static already_AddRefed<Headers> Create(
|
||||
nsIGlobalObject* aGlobalObject,
|
||||
const OwningHeadersOrByteStringSequenceSequenceOrByteStringByteStringRecord&
|
||||
aInit,
|
||||
const OwningByteStringSequenceSequenceOrByteStringByteStringRecord& aInit,
|
||||
ErrorResult& aRv);
|
||||
|
||||
void Append(const nsACString& aName, const nsACString& aValue,
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
* http://fetch.spec.whatwg.org/#headers-class
|
||||
*/
|
||||
|
||||
typedef (Headers or sequence<sequence<ByteString>> or record<ByteString, ByteString>) HeadersInit;
|
||||
typedef (sequence<sequence<ByteString>> or record<ByteString, ByteString>) HeadersInit;
|
||||
|
||||
enum HeadersGuardEnum {
|
||||
"none",
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
[headers-basic.html]
|
||||
[Create headers with existing headers with custom iterator]
|
||||
expected: FAIL
|
||||
|
Загрузка…
Ссылка в новой задаче