Construct URLSearchParams from record<>

This commit is contained in:
JustOff 2019-03-13 21:22:29 +02:00 committed by Roy Tam
commit 1729192b5d
3 changed files with 10 additions and 4 deletions

View file

@ -327,7 +327,7 @@ URLSearchParams::WrapObject(JSContext* aCx, JS::Handle<JSObject*> aGivenProto)
/* static */ already_AddRefed<URLSearchParams>
URLSearchParams::Constructor(const GlobalObject& aGlobal,
const USVStringSequenceSequenceOrUSVString& aInit,
const USVStringSequenceSequenceOrUSVStringUSVStringRecordOrUSVString& aInit,
ErrorResult& aRv)
{
RefPtr<URLSearchParams> sp =
@ -351,6 +351,12 @@ URLSearchParams::Constructor(const GlobalObject& aGlobal,
}
sp->Append(item[0], item[1]);
}
} else if (aInit.IsUSVStringUSVStringRecord()) {
const Record<nsString, nsString>& record =
aInit.GetAsUSVStringUSVStringRecord();
for (auto& entry : record.Entries()) {
sp->Append(entry.mKey, entry.mValue);
}
} else {
MOZ_CRASH("This should not happen.");
}