File::Spec bugs (spotted by Hack Kampbjorn <hack@hackdata.com>)
Gurusamy Sarathy [Fri, 3 Mar 2000 02:58:49 +0000 (02:58 +0000)]
p4raw-id: //depot/perl@5472

lib/File/Spec/Mac.pm
lib/File/Spec/Unix.pm
lib/File/Spec/VMS.pm
lib/File/Spec/Win32.pm

index be9a43c..959e33d 100644 (file)
@@ -343,8 +343,8 @@ sub abs2rel {
 
 Converts a relative path to an absolute path. 
 
-    $abs_path = $File::Spec->rel2abs( $destination ) ;
-    $abs_path = $File::Spec->rel2abs( $destination, $base ) ;
+    $abs_path = File::Spec->rel2abs( $destination ) ;
+    $abs_path = File::Spec->rel2abs( $destination, $base ) ;
 
 If $base is not present or '', then L<cwd()> is used. If $base is relative, 
 then it is converted to absolute form using L</rel2abs()>. This means that it
index f4e9f27..0cbc8c7 100644 (file)
@@ -383,8 +383,8 @@ sub abs2rel {
 
 Converts a relative path to an absolute path. 
 
-    $abs_path = $File::Spec->rel2abs( $destination ) ;
-    $abs_path = $File::Spec->rel2abs( $destination, $base ) ;
+    $abs_path = File::Spec->rel2abs( $destination ) ;
+    $abs_path = File::Spec->rel2abs( $destination, $base ) ;
 
 If $base is not present or '', then L<cwd()> is used. If $base is relative, 
 then it is converted to absolute form using L</rel2abs()>. This means that it
index 52519b9..9514dd7 100644 (file)
@@ -485,12 +485,12 @@ sub abs2rel {
     }
 
     # Figure out the effective $base and clean it up.
-    if ( ! $self->file_name_is_absolute( $base ) ) {
-        $base = $self->rel2abs( $base ) ;
-    }
-    elsif ( !defined( $base ) || $base eq '' ) {
+    if ( !defined( $base ) || $base eq '' ) {
         $base = cwd() ;
     }
+    elsif ( ! $self->file_name_is_absolute( $base ) ) {
+        $base = $self->rel2abs( $base ) ;
+    }
     else {
         $base = $self->canonpath( $base ) ;
     }
index 85a71a2..aa95fbd 100644 (file)
@@ -341,8 +341,8 @@ sub abs2rel {
 
 Converts a relative path to an absolute path. 
 
-    $abs_path = $File::Spec->rel2abs( $destination ) ;
-    $abs_path = $File::Spec->rel2abs( $destination, $base ) ;
+    $abs_path = File::Spec->rel2abs( $destination ) ;
+    $abs_path = File::Spec->rel2abs( $destination, $base ) ;
 
 If $base is not present or '', then L<cwd()> is used. If $base is relative, 
 then it is converted to absolute form using L</rel2abs()>. This means that it
@@ -368,12 +368,12 @@ sub rel2abs($;$;) {
 
     if ( ! $self->file_name_is_absolute( $path ) ) {
 
-        if ( ! $self->file_name_is_absolute( $base ) ) {
-            $base = $self->rel2abs( $base ) ;
-        }
-        elsif ( !defined( $base ) || $base eq '' ) {
+        if ( !defined( $base ) || $base eq '' ) {
             $base = cwd() ;
         }
+        elsif ( ! $self->file_name_is_absolute( $base ) ) {
+            $base = $self->rel2abs( $base ) ;
+        }
         else {
             $base = $self->canonpath( $base ) ;
         }