X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FController%2FCGIBin.pm;h=20755aa430a18584bdeeda314183b075232d5543;hb=d501f45e86dabe1c138f0c145f955607e7f2a488;hp=f05db5b7eb5fc2405d8e593bc57a9119e2ddd44b;hpb=bef5bffc1e2bbd5e907e3e8010aed6de0c3054be;p=catagits%2FCatalyst-Controller-WrapCGI.git diff --git a/lib/Catalyst/Controller/CGIBin.pm b/lib/Catalyst/Controller/CGIBin.pm index f05db5b..20755aa 100644 --- a/lib/Catalyst/Controller/CGIBin.pm +++ b/lib/Catalyst/Controller/CGIBin.pm @@ -104,9 +104,14 @@ has cgi_file_pattern => (is => 'rw', default => sub { ['*'] }); sub register_actions { my ($self, $app) = @_; - my $cgi_bin = File::Spec->file_name_is_absolute($self->cgi_dir) ? - $self->cgi_dir - : $app->path_to('root', $self->cgi_dir); + my $cgi_bin; + if( File::Spec->file_name_is_absolute($self->cgi_dir) ) { + $cgi_bin = $self->cgi_dir; + } elsif( File::Spec->file_name_is_absolute( $app->config->{root} ) ) { + $cgi_bin = File::Spec->catdir( $app->config->{root}, $self->cgi_dir ); + } else { + $cgi_bin = $app->path_to( $app->config->{root}, $self->cgi_dir); + } my $namespace = $self->action_namespace($app);