summaryrefslogtreecommitdiff
path: root/test/pathname
diff options
context:
space:
mode:
authornagachika <nagachika@ruby-lang.org>2020-06-27 12:29:42 +0900
committernagachika <nagachika@ruby-lang.org>2020-06-27 12:29:42 +0900
commit799c5766a4dc215d139d2c26ac68636f43a64fbf (patch)
tree03f4330b6617fde2167ad398b18047b19c399b3e /test/pathname
parentd8a32b146561a0ddd3e60da9863a082b7e7725db (diff)
merge revision(s) a19228f878d955eaf2cce086bcf53f46fdf894b9: [Backport #16979]
brace the fact that lchmod(2) can EOPNOTSUPP Musl libc has this function as a tiny wrapper of fchmodat(3posix). On the other hand Linux kernel does not support changing modes of a symlink. The operation always fails with EOPNOTSUPP. This fchmodat behaviour is defined in POSIX. We have to take care of such exceptions.
Diffstat (limited to 'test/pathname')
-rw-r--r--test/pathname/test_pathname.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/test/pathname/test_pathname.rb b/test/pathname/test_pathname.rb
index 792510bdfb..2ce32a6c12 100644
--- a/test/pathname/test_pathname.rb
+++ b/test/pathname/test_pathname.rb
@@ -818,7 +818,7 @@ class TestPathname < Test::Unit::TestCase
old = path.lstat.mode
begin
path.lchmod(0444)
- rescue NotImplementedError
+ rescue NotImplementedError, Errno::EOPNOTSUPP
next
end
assert_equal(0444, path.lstat.mode & 0777)