diff options
author | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-05-15 04:16:08 +0000 |
---|---|---|
committer | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-05-15 04:16:08 +0000 |
commit | 84bb8e81c25d4d7d6020c3acfbbc36e9064200fa (patch) | |
tree | 4e3778f2047fa5f18188ae8799ca9cb30b1357e9 /lib/fileutils.rb | |
parent | 4e09f414fc6e0bdc5cdf6863f5698464ac3e8a7d (diff) | |
download | ruby-84bb8e81c25d4d7d6020c3acfbbc36e9064200fa.tar.gz |
Revert "Merge fileutils-1.1.0."
This reverts commit 99da3d2570e110d3024039102205f6d64174bf5e.
The change caused the following build failure:
```
.../ruby/lib/fileutils.rb:88:in `require': cannot load such file -- rbconfig (LoadError)
uncommon.mk:987: recipe for target 'encdb.h' failed
make: *** [encdb.h] Error 1
```
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/fileutils.rb')
-rw-r--r-- | lib/fileutils.rb | 66 |
1 files changed, 20 insertions, 46 deletions
diff --git a/lib/fileutils.rb b/lib/fileutils.rb index 7cbc6f46fa..88e28f29d5 100644 --- a/lib/fileutils.rb +++ b/lib/fileutils.rb @@ -85,11 +85,9 @@ # <tt>:verbose</tt> flags to methods in FileUtils. # -require 'rbconfig' - module FileUtils - VERSION = "1.1.0" + VERSION = "1.0.2" def self.private_module_function(name) #:nodoc: module_function name @@ -121,9 +119,8 @@ module FileUtils # def cd(dir, verbose: nil, &block) # :yield: dir fu_output_message "cd #{dir}" if verbose - result = Dir.chdir(dir, &block) + Dir.chdir(dir, &block) fu_output_message 'cd -' if verbose and block - result end module_function :cd @@ -544,7 +541,7 @@ module FileUtils module_function :move def rename_cannot_overwrite_file? #:nodoc: - /emx/ =~ RbConfig::CONFIG['host_os'] + /emx/ =~ RUBY_PLATFORM end private_module_function :rename_cannot_overwrite_file? @@ -684,38 +681,22 @@ module FileUtils unless parent_st.sticky? raise ArgumentError, "parent directory is world writable, FileUtils#remove_entry_secure does not work; abort: #{path.inspect} (parent directory mode #{'%o' % parent_st.mode})" end - # freeze tree root euid = Process.euid - dot_file = fullpath + "/." - begin - File.open(dot_file) {|f| - unless fu_stat_identical_entry?(st, f.stat) - # symlink (TOC-to-TOU attack?) - File.unlink fullpath - return - end - f.chown euid, -1 - f.chmod 0700 - } - rescue EISDIR # JRuby in non-native mode can't open files as dirs - File.lstat(dot_file).tap {|fstat| - unless fu_stat_identical_entry?(st, fstat) - # symlink (TOC-to-TOU attack?) - File.unlink fullpath - return - end - File.chown euid, -1, dot_file - File.chmod 0700, dot_file - } - end - - unless fu_stat_identical_entry?(st, File.lstat(fullpath)) - # TOC-to-TOU attack? - File.unlink fullpath - return - end - + File.open(fullpath + '/.') {|f| + unless fu_stat_identical_entry?(st, f.stat) + # symlink (TOC-to-TOU attack?) + File.unlink fullpath + return + end + f.chown euid, -1 + f.chmod 0700 + unless fu_stat_identical_entry?(st, File.lstat(fullpath)) + # TOC-to-TOU attack? + File.unlink fullpath + return + end + } # ---- tree root is frozen ---- root = Entry_.new(path) root.preorder_traverse do |ent| @@ -816,15 +797,8 @@ module FileUtils # def compare_stream(a, b) bsize = fu_stream_blksize(a, b) - - if RUBY_VERSION > "2.4" - sa = String.new(capacity: bsize) - sb = String.new(capacity: bsize) - else - sa = String.new - sb = String.new - end - + sa = String.new(capacity: bsize) + sb = String.new(capacity: bsize) begin a.read(bsize, sa) b.read(bsize, sb) @@ -1149,7 +1123,7 @@ module FileUtils private def fu_windows? - /mswin|mingw|bccwin|emx/ =~ RbConfig::CONFIG['host_os'] + /mswin|mingw|bccwin|emx/ =~ RUBY_PLATFORM end def fu_copy_stream0(src, dest, blksize = nil) #:nodoc: |