[Catalyst-dev] [patch] Catalyst::Engine::Apache bug

Carl Johnstone catalyst at fadetoblack.me.uk
Tue Feb 13 16:55:39 GMT 2007


I've got a problem with $c->req->arguments which I've tracked track to a bu=
g =

with how the Catalyst::Engine::Apache parses the URL.

Given the URL: /search/foo%2Fbar%20baz/1

The cat-server returns:

$VAR1 =3D [
          'search',
          'foo/bar baz',
          '1'
        ];

Whereas through Apache I get:

$VAR1 =3D [
          'search',
          'foo',
          'bar baz',
          '1'
        ];


This is because Catalyst::Engine::Apache is called apache->uri which has =

already unescaped the URL. Using apache->unparsed_uri and splitting off the =

query_string portion means that I get the same result through Apache as =

through the cat-server. I've attached my change as a patch.

Carl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cat-apache.patch
Type: application/octet-stream
Size: 704 bytes
Desc: not available
Url : http://lists.scsys.co.uk/pipermail/catalyst-dev/attachments/20070213/=
1f202ad2/cat-apache.obj


More information about the Catalyst-dev mailing list