Correctly check for duplicate input parameters #1743
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This fixes issue when manually matching requests, e.g. for the search indexer.
The mentioned issue (contao/core#4277) describes multiple cases, and it is where we added the unused argument stuff. These lines were previously added to prevent duplicate parameters in the URL.
http://example.com/foo/bar/foo/baz.html
, Contao (previously) correctly rendered the page withfoo
being set tobaz
. This also allowed for duplicate page URLs (e.g.http://example.com/foo/bar/foo/bar/foo/bar/foo/baz.html
and the unused argument handling wouldn't kick in.http://example.com/foo/bar.html?foo=baz
).In Contao 3, this meant checking the
$_GET
array for duplicate data. In Symfony, this should only match on the current request.Warning: what this PR cannot solve (and wasn't solved before) is actually running multiple requests that change the
$_GET
parameters 🤷