Plack::Request and Catalyst::Request have incompatible semantics for
naked parameters: P::Rq parses them as keys with empty-string values
while C::Rq parses them as keys with an undef value. Therefore even
if a Hash::MultiValue object was cached by P::Rq in the environment,
it is wrong to reuse it.
my ($self, $c) = @_;
my $env = $c->request->env;
- if(my $query_obj = $env->{'plack.request.query'}) {
- $c->request->query_parameters(
- $c->request->_use_hash_multivalue ?
- $query_obj->clone :
- $query_obj->as_hashref_mixed);
- return;
- }
-
my $query_string = exists $env->{QUERY_STRING}
? $env->{QUERY_STRING}
: '';