X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FController.pm;h=1442649c959c96c54edbda870969677ce1297ec0;hb=2f498a7ee1e99938c3684604336d99488c9d6499;hp=16b5a386f194ef928b4a6fe4e1d03270e78c9f8d;hpb=bdd6684e4fc8a5d23e580c22831aa21f42f3b9c8;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Controller.pm b/lib/Catalyst/Controller.pm index 16b5a38..1442649 100644 --- a/lib/Catalyst/Controller.pm +++ b/lib/Catalyst/Controller.pm @@ -321,7 +321,9 @@ sub _parse_attrs { %raw_attributes = ( %raw_attributes, - exists $actions_config->{$name} ? %{ $actions_config->{$name } } : (), + # Note we deep copy array refs here to stop crapping on config + # when attributes are parsed. RT#65463 + exists $actions_config->{$name} ? map { ref($_) eq 'ARRAY' ? [ @$_ ] : $_ } %{ $actions_config->{$name } } : (), ); # Private actions with additional attributes will raise a warning and then @@ -480,7 +482,7 @@ Sets 'path_prefix', as described below. Allows you to set the attributes that the dispatcher creates actions out of. This allows you to do 'rails style routes', or override some of the -attribute defintions of actions composed from Roles. +attribute definitions of actions composed from Roles. You can set arguments globally (for all actions of the controller) and specifically (for a single action).