From: Florian Ragwitz Date: Sun, 24 Aug 2008 19:32:00 +0000 (+0000) Subject: Implement :Chained('../action'). X-Git-Tag: 5.7099_04~23 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=commitdiff_plain;h=eb270c30772dd578741727a78b9deb5fb4f72905 Implement :Chained('../action'). --- diff --git a/lib/Catalyst/Controller.pm b/lib/Catalyst/Controller.pm index 657c59e..85ffb38 100644 --- a/lib/Catalyst/Controller.pm +++ b/lib/Catalyst/Controller.pm @@ -285,6 +285,9 @@ sub _parse_Chained_attr { if (defined($value) && length($value)) { if ($value eq '.') { $value = '/'.$self->action_namespace($c); + } elsif (my ($rest) = $value =~ /^\.{2}\/(.*)$/) { + my @parts = split '/', $self->action_namespace($c); + $value = '/'.join('/', @parts[0 .. $#parts-1], $rest); } elsif ($value !~ m/^\//) { my $action_ns = $self->action_namespace($c);