summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/fileutils.rb2
-rw-r--r--test/fileutils/test_fileutils.rb6
2 files changed, 6 insertions, 2 deletions
diff --git a/lib/fileutils.rb b/lib/fileutils.rb
index 05d0dc83a7..775b277a72 100644
--- a/lib/fileutils.rb
+++ b/lib/fileutils.rb
@@ -739,7 +739,7 @@ module FileUtils
real_ddirs = fu_split_path(File.realpath(parent))
else
destdirs ||= fu_split_path(dest)
- real_ddirs ||= fu_split_path(File.realpath(dest))
+ real_ddirs ||= fu_split_path(File.realdirpath(dest))
end
srcdirs = fu_split_path(s)
i = fu_common_components(srcdirs, destdirs)
diff --git a/test/fileutils/test_fileutils.rb b/test/fileutils/test_fileutils.rb
index 4ccea53e95..92308d9557 100644
--- a/test/fileutils/test_fileutils.rb
+++ b/test/fileutils/test_fileutils.rb
@@ -1080,7 +1080,11 @@ class TestFileUtils < Test::Unit::TestCase
assert_raise(Errno::EEXIST, Errno::EACCES) {
ln_sr fname, 'tmp', target_directory: false
}
- assert_file.not_exist? File.join('tmp/', File.basename(fname))
+ dest = File.join('tmp/', File.basename(fname))
+ assert_file.not_exist? dest
+ ln_sr fname, dest, target_directory: false
+ assert_file.symlink?(dest)
+ assert_equal("../#{fname}", File.readlink(dest))
end
end if have_symlink?