Merge pull request #11349 from bryanhonof/bryanhonof.check-query-for-equals

Warn on malformed URI query parameter
This commit is contained in:
Robert Hensing 2024-08-28 21:56:00 +02:00 committed by GitHub
commit b89eca9aec
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -79,10 +79,15 @@ std::map<std::string, std::string> decodeQuery(const std::string & query)
for (auto s : tokenizeString<Strings>(query, "&")) {
auto e = s.find('=');
if (e != std::string::npos)
result.emplace(
s.substr(0, e),
percentDecode(std::string_view(s).substr(e + 1)));
if (e == std::string::npos) {
warn("dubious URI query '%s' is missing equal sign '%s'", s, "=");
continue;
}
result.emplace(
s.substr(0, e),
percentDecode(std::string_view(s).substr(e + 1)));
}
return result;