X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=lib%2FCatalyst.pm;h=cd40aef9a54f345f6e201902b2ae02f479c70b4d;hp=b243772b5574bb8877156a9e4d2be81c510797f9;hb=5d02e7902fb093a28deeea34bd4bd8a729e78be4;hpb=7d6820cc9cd445e7a3d0c3094584a5eb31f60eb1 diff --git a/lib/Catalyst.pm b/lib/Catalyst.pm index b243772..cd40aef 100644 --- a/lib/Catalyst.pm +++ b/lib/Catalyst.pm @@ -2224,8 +2224,11 @@ sub setup_components { } for my $component (@comps) { - $class->components->{ $component } = $class->setup_component($component); - for my $component ($class->expand_component_module( $component, $config )) { + my $instance = $class->components->{ $component } = $class->setup_component($component); + my @expanded_components = $instance->can('expand_modules') + ? $instance->expand_modules( $component, $config ) + : $class->expand_component_module( $component, $config ); + for my $component (@expanded_components) { next if $comps{$component}; $class->_controller_init_base_classes($component); # Also cover inner packages $class->components->{ $component } = $class->setup_component($component);