Version 1.28
[catagits/Catalyst-Devel.git] / lib / Catalyst / Helper.pm
index 86ba60f..3b182ad 100644 (file)
@@ -18,7 +18,7 @@ use namespace::autoclean;
 with 'MooseX::Emulate::Class::Accessor::Fast';
 
 # Change Catalyst/Devel.pm also
-our $VERSION = '1.23';
+our $VERSION = '1.28';
 
 my %cache;
 
@@ -34,28 +34,19 @@ Catalyst::Helper - Bootstrap a Catalyst application
 
 sub get_sharedir_file {
     my ($self, @filename) = @_;
-
-    my @try_dirs;
-    if (exists $self->{base}) {
-        push @try_dirs, $self->{base};
-    }
+    my $dist_dir;
     if (exists $ENV{CATALYST_DEVEL_SHAREDIR}) {
-        push @try_dirs, $ENV{CATALYST_DEVEL_SHAREDIR}
+        $dist_dir = $ENV{CATALYST_DEVEL_SHAREDIR};
     }
-    if (-d "inc/.author" && -f "lib/Catalyst/Helper.pm"
+    elsif (-d "inc/.author" && -f "lib/Catalyst/Helper.pm"
             ) { # Can't use sharedir if we're in a checkout
                 # this feels horrible, better ideas?
-        push @try_dirs, 'share';
+        $dist_dir = 'share';
     }
     else {
-        push @try_dirs, dist_dir('Catalyst-Devel');
-    }
-
-    my $file;
-    foreach my $dist_dir (@try_dirs) {
-      $file = file( $dist_dir, @filename);
-      last if -r $file;
+        $dist_dir = dist_dir('Catalyst-Devel');
     }
+    my $file = file( $dist_dir, @filename);
     Carp::confess("Cannot find $file") unless -r $file;
     my $contents = $file->slurp;
     return $contents;
@@ -99,7 +90,7 @@ sub mk_app {
     $self->{appenv          } = Catalyst::Utils::class2env($name);
     $self->{startperl       } = -r '/usr/bin/env'
                                 ? '#!/usr/bin/env perl'
-                                : "#!$Config{perlpath} -w";
+                                : "#!$Config{perlpath}";
     $self->{scriptgen       } = $Catalyst::Devel::CATALYST_SCRIPT_GEN;
     $self->{catalyst_version} = $Catalyst::VERSION;
     $self->{author          } = $self->{author} = $ENV{'AUTHOR'}