Fix Pathname.install for relative symlinks
If you have a bunch of symlinks and they all point at one file and you use Pathname.install on them all the error checking would fail if the file was moved before the symlinks because the symlinks would then point at a non existent file.
This commit is contained in:
parent
e0999078dc
commit
8cdb504b14
@ -29,7 +29,12 @@ class Pathname
|
||||
if src.is_a? Array
|
||||
src.collect {|src| install src }
|
||||
else
|
||||
raise "#{src} does not exist" unless File.exist? src
|
||||
# if it's a symlink, don't resolve it to a file because if we are moving
|
||||
# files one by one, it's likely we will break the symlink by moving what
|
||||
# it points to before we move it
|
||||
# and also broken symlinks are not the end of the world
|
||||
raise "#{src} does not exist" unless File.symlink? src or File.exist? src
|
||||
|
||||
mkpath
|
||||
if File.symlink? src
|
||||
# we use the BSD mv command because FileUtils copies the target and
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user