fixed forwarding to application methods (t/aggregate/live_component_controller_action...
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Dispatcher.pm
index d82dfe1..67adf17 100644 (file)
@@ -319,6 +319,10 @@ sub _find_component {
 sub _invoke_as_component {
     my ( $self, $c, $component_or_class, $method ) = @_;
 
+    if( $component_or_class eq blessed($c->application) ){ 
+        my $possible_action = $c->application->action_for($method); 
+        return $possible_action if $possible_action; 
+    } 
     my $component = $self->_find_component($c, $component_or_class);
     my $component_class = blessed $component || return 0;
 
@@ -334,9 +338,7 @@ sub _invoke_as_component {
                 code      => $code,
                 reverse   => "$component_class->$method",
                 class     => $component_class,
-                namespace => Catalyst::Utils::class2prefix(
-                    $component_class, ref($c)->config->{case_sensitive}
-                ),
+                namespace => Catalyst::Utils::class2prefix( $component_class ),
             }
         );
     }