diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Path/ResolveSymlinks.pm | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/lib/Path/ResolveSymlinks.pm b/lib/Path/ResolveSymlinks.pm deleted file mode 100644 index 695122a..0000000 --- a/lib/Path/ResolveSymlinks.pm +++ /dev/null @@ -1,39 +0,0 @@ -package Path::ResolveSymlinks; -use strict; -use warnings; -use Cwd 'abs_path'; -use Path::Class; -use Carp; - -sub resolve_symlinks { - my ($name)=@_; - - my ($dir,$file); - if (-d $name) { - $dir=dir($name); - } - elsif (-f $name) { - $file=file($name); - $dir=$file->parent; - $file=$file->basename; - } - else { - croak "$name is neither a file nor a directory"; - } - - $dir=dir(abs_path($dir));warn "dir: $dir\n"; - return $dir unless defined $file; - - $file=$dir->file($file);warn "file: $file\n"; - return $file unless -l $file; - - my $dest=file(readlink $file);warn "dest: $dest\n"; - if ($dest->is_absolute) { - return resolve_symlinks($dest); - } - else { - return resolve_symlinks($dir->file($dest)); - } -} - -1; |