summaryrefslogtreecommitdiff
path: root/lib/pathname.rb
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-07-10 15:17:35 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-07-10 15:17:35 +0000
commitf41e9c805cf5112bc0a84770e1c860c912d6d61a (patch)
tree3ac2609826c67f740eb692dab18e6a248c436b6c /lib/pathname.rb
parent2e820ca5e0e6a82e09a98c098eb41092a72ef23a (diff)
* lib/pathname.rb (Pathname#unlink): try Dir.unlink first to
avoid unlink a directory by root. cf. [ruby-dev:26237] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/pathname.rb')
-rw-r--r--lib/pathname.rb4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/pathname.rb b/lib/pathname.rb
index 9a08fa39c2..fd7fa508b8 100644
--- a/lib/pathname.rb
+++ b/lib/pathname.rb
@@ -869,9 +869,9 @@ class Pathname # * mixed *
# <tt>Dir.unlink</tt> as necessary.
def unlink()
begin
- File.unlink @path
- rescue SystemCallError
Dir.unlink @path
+ rescue Errno::ENOTDIR
+ File.unlink @path
end
end
alias delete unlink