add defensive logic to querystring parser to handle duplicate parameters

This commit is contained in:
Shaun Walker 2023-02-15 15:21:50 -05:00
parent a50a13374f
commit 7db6b82a1a

View File

@ -306,11 +306,17 @@
if (kvp.Contains("=")) if (kvp.Contains("="))
{ {
string[] pair = kvp.Split('='); string[] pair = kvp.Split('=');
querystring.Add(pair[0], pair[1]); if (!querystring.ContainsKey(pair[0]))
{
querystring.Add(pair[0], pair[1]);
}
} }
else else
{ {
querystring.Add(kvp, "true"); // default parameter when no value is provided if (!querystring.ContainsKey(kvp))
{
querystring.Add(kvp, "true"); // default parameter when no value is provided
}
} }
} }
} }