Initial commit of Moosified Catalyst parts.
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Utils.pm
index fd23d95..4e5571e 100644 (file)
@@ -171,8 +171,9 @@ sub home {
                 # clean up relative path:
                 # MyApp/script/.. -> MyApp
 
-                my ($lastdir) = $home->dir_list( -1, 1 );
-                if ( $lastdir eq '..' ) {
+                my $dir;
+                my @dir_list = $home->dir_list();
+                while (($dir = pop(@dir_list)) && $dir eq '..') {
                     $home = dir($home)->parent->parent;
                 }
 
@@ -264,7 +265,9 @@ sub ensure_class_loaded {
     my $error;
     {
         local $@;
-        eval "require $class;";
+        my $file = $class . '.pm';
+        $file =~ s{::}{/}g;
+        eval { CORE::require($file) };
         $error = $@;
     }