X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FController.pm;h=256b2c37471c2d59eb122b0deb3a807b131b80ef;hb=afb82794328ff8da1efc0a4c37f3f3703c262c31;hp=703a156df7c3385dbe5b94c472adf1d4e09bdb65;hpb=96d8d513f11c4fc078b4956a779a68f411cfbee6;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Controller.pm b/lib/Catalyst/Controller.pm index 703a156..256b2c3 100644 --- a/lib/Catalyst/Controller.pm +++ b/lib/Catalyst/Controller.pm @@ -1,8 +1,6 @@ package Catalyst::Controller; #switch to BEGIN { extends qw/ ... /; } ? -use MRO::Compat; -use mro 'c3'; use base qw/Catalyst::Component Catalyst::AttrContainer/; use Moose; @@ -124,13 +122,14 @@ sub _END : Private { return !@{ $c->error }; } -sub new { +around new => sub { + my $orig = shift; my $self = shift; my $app = $_[0]; - my $new = $self->next::method(@_); + my $new = $self->$orig(@_); $new->_application( $app ); return $new; -} +}; sub action_for { my ( $self, $name ) = @_; @@ -147,7 +146,7 @@ around action_namespace => sub { if( ref($self) ){ return $self->$orig if $self->has_action_namespace; - } else { + } else { return $self->config->{namespace} if exists $self->config->{namespace}; } @@ -362,6 +361,8 @@ sub _parse_MyAction_attr { no Moose; +__PACKAGE__->meta->make_immutable; + 1; __END__