Bug 1431449 - Introduce URLParams::Parse; r=bz

MozReview-Commit-ID: LicbWjZHxjz

--HG--
extra : rebase_source : c49df723c73c03d64b4b9ca5f6d3a52735e38b7d
This commit is contained in:
Anthony Ramine 2018-01-18 12:53:35 +01:00
Родитель ace07f37c9
Коммит fbcfbecb79
4 изменённых файлов: 13 добавлений и 8 удалений

Просмотреть файл

@ -251,11 +251,8 @@ OriginAttributes::PopulateFromSuffix(const nsACString& aStr)
return false;
}
URLParams params;
params.ParseInput(Substring(aStr, 1, aStr.Length() - 1));
PopulateFromSuffixIterator iterator(this);
return params.ForEach(iterator);
return URLParams::Parse(Substring(aStr, 1, aStr.Length() - 1), iterator);
}
bool

Просмотреть файл

@ -469,12 +469,9 @@ BodyUtil::ConsumeFormData(nsIGlobalObject* aParent, const nsCString& aMimeType,
}
if (isValidUrlEncodedMimeType) {
URLParams params;
params.ParseInput(aStr);
RefPtr<FormData> fd = new FormData(aParent);
FillFormIterator iterator(fd);
DebugOnly<bool> status = params.ForEach(iterator);
DebugOnly<bool> status = URLParams::Parse(aStr, iterator);
MOZ_ASSERT(status);
return fd.forget();

Просмотреть файл

@ -163,6 +163,14 @@ URLParams::DecodeString(const nsACString& aInput, nsAString& aOutput)
ConvertString(unescaped, aOutput);
}
/* static */ bool
URLParams::Parse(const nsACString& aInput, ForEachIterator& aIterator)
{
URLParams params;
params.ParseInput(aInput);
return params.ForEach(aIterator);
}
void
URLParams::ParseInput(const nsACString& aInput)
{

Просмотреть файл

@ -50,6 +50,9 @@ public:
URLParamsIterator(const nsString& aName, const nsString& aValue) = 0;
};
static bool
Parse(const nsACString& aInput, ForEachIterator& aIterator);
void
ParseInput(const nsACString& aInput);