Upgrade to PathTools 3.05
[p5sagit/p5-mst-13.2.git] / lib / Cwd.pm
index cf07cb4..002b7c1 100644 (file)
@@ -170,7 +170,7 @@ use strict;
 use Exporter;
 use vars qw(@ISA @EXPORT @EXPORT_OK $VERSION);
 
-$VERSION = '3.04';
+$VERSION = '3.05';
 
 @ISA = qw/ Exporter /;
 @EXPORT = qw(cwd getcwd fastcwd fastgetcwd);
@@ -199,15 +199,16 @@ if ($^O eq 'os2') {
     return 1;
 }
 
+# If loading the XS stuff doesn't work, we can fall back to pure perl
 eval {
-if ( $] >= 5.006 ) {
-  require XSLoader;
-  XSLoader::load( __PACKAGE__, $VERSION );
-} else {
-  require DynaLoader;
-  push @ISA, 'DynaLoader';
-  __PACKAGE__->bootstrap( $VERSION );
-}
+  if ( $] >= 5.006 ) {
+    require XSLoader;
+    XSLoader::load( __PACKAGE__, $VERSION );
+  } else {
+    require DynaLoader;
+    push @ISA, 'DynaLoader';
+    __PACKAGE__->bootstrap( $VERSION );
+  }
 };
 
 # Must be after the DynaLoader stuff:
@@ -583,7 +584,9 @@ sub fast_abs_path {
            return fast_abs_path($link_target);
        }
        
-       return $dir eq File::Spec->rootdir
+       my $tdir = $dir;
+       $tdir =~ s!\\!/!g if $^O eq 'MSWin32';
+       return $tdir eq File::Spec->rootdir
          ? File::Spec->catpath($vol, $dir, $file)
          : fast_abs_path(File::Spec->catpath($vol, $dir, '')) . '/' . $file;
     }