From: Tomas Doran Date: Mon, 19 Oct 2009 16:54:08 +0000 (+0000) Subject: Well, this fixes my current issue, and doesn't seem to break any tests.. This likely... X-Git-Tag: 5.80014~20 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=commitdiff_plain;h=aaf72276ef2f2c7c9cb9c0ab56b2bb3ade67bfb5 Well, this fixes my current issue, and doesn't seem to break any tests.. This likely means that the tests are still shit --- diff --git a/lib/Catalyst.pm b/lib/Catalyst.pm index 7030930..9c342e8 100644 --- a/lib/Catalyst.pm +++ b/lib/Catalyst.pm @@ -1247,9 +1247,10 @@ sub uri_for { } if ( blessed($path) ) { # action object - my $captures = ( scalar @args && ref $args[0] eq 'ARRAY' - ? shift(@args) - : [] ); + my $captures = [ map { URI::Escape::uri_escape($_) } + ( scalar @args && ref $args[0] eq 'ARRAY' + ? @{ shift(@args) } + : ()) ]; my $action = $path; $path = $c->dispatcher->uri_for_action($action, $captures); if (not defined $path) {