unless ( @{$results} ) {
my $class = $command || '';
+ my $path = $class . '.pm';
+ $path =~ s/::/\//g;
- if ( $class =~ /[^\w\:]/ ) {
- my $error = qq/Couldn't forward to "$class"/;
+ unless ( $INC{ $path } ) {
+ my $error = qq/Unknown class "$class"/;
$c->error($error);
$c->log->debug($error) if $c->debug;
return 0;
}
else {
- my $error = qq/Couldn't forward to "$class"/;
+ my $error = qq/Couldn't forward to "$class". Does not implement "$method"/;
$c->error($error);
$c->log->debug($error)
if $c->debug;
my $name = $c->actions->{compiled}->[$i]->[0];
my $regex = $c->actions->{compiled}->[$i]->[1];
- if ( $action =~ $regex ) {
- my @snippets;
- for my $i ( 1 .. 9 ) {
- no strict 'refs';
- last unless ${$i};
- push @snippets, ${$i};
- }
+ if ( my @snippets = ( $action =~ $regex ) ) {
return [ [ $c->actions->{regex}->{$name}, $name, \@snippets ] ];
}