X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FController.pm;h=dd1dca07ffd90ff87cc50d9eed1d33a919f8018a;hb=2dc77703330d645d683f869681221d2be8e4b5be;hp=028737f6c5937ae45c0a4432f0da920d19f8bbae;hpb=362c4f797541e899f48034811ae7d134c746b003;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Controller.pm b/lib/Catalyst/Controller.pm index 028737f..dd1dca0 100644 --- a/lib/Catalyst/Controller.pm +++ b/lib/Catalyst/Controller.pm @@ -17,7 +17,7 @@ has path_prefix => ( is => 'rw', isa => 'Str', - init_arg => 'path', # 5.7 compat + init_arg => 'path', predicate => 'has_path_prefix', ); @@ -25,7 +25,7 @@ has action_namespace => ( is => 'rw', isa => 'Str', - init_arg => 'namespace', # 5.7 compat + init_arg => 'namespace', predicate => 'has_action_namespace', ); @@ -33,18 +33,16 @@ has _controller_actions => ( is => 'rw', isa => 'HashRef', - init_arg => 'action', # 5.7 compat + init_arg => undef, ); -around BUILDARGS => sub { # Icky 5.7 compat - my $orig = shift; - my $self = shift; - my $args = $self->$orig(@_); +sub BUILD { + my ($self, $args) = @_; my $action = delete $args->{action} || {}; my $actions = delete $args->{actions} || {}; - $args->{action} = $self->merge_config_hashes($actions, $action); - return $args; -}; + my $attr_value = $self->merge_config_hashes($actions, $action); + $self->_controller_actions($attr_value); +} =head1 NAME @@ -477,7 +475,7 @@ Catalyst Contributors, see Catalyst.pm =head1 COPYRIGHT -This program is free software, you can redistribute it and/or modify +This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself. =cut