summaryrefslogtreecommitdiff
path: root/lib/fileutils.rb
diff options
context:
space:
mode:
authorHiroshi SHIBATA <[email protected]>2019-11-30 17:58:39 +0900
committerHiroshi SHIBATA <[email protected]>2019-11-30 17:58:39 +0900
commit32e547954fbbcbdd6f4468bf3be9e7eaa5d32f0f ()
treef884bfaf0d2baa60d4f4a54d1c7880608533e5d9 /lib/fileutils.rb
parent5e9f08647cead8b7fa303a5da88c5e96035f3497 (diff)
Revert "[ruby/fileutils] Fix #install with "X" mode option"
This reverts commit eab88d20eaa925d5e61a2a65820a099b46ccf3f8. The some CI was broken with this.
-rw-r--r--lib/fileutils.rb9
1 files changed, 6 insertions, 3 deletions
@@ -917,8 +917,11 @@ module FileUtils
private_module_function :apply_mask
def symbolic_modes_to_i(mode_sym, path) #:nodoc:
- path = File.stat(path) unless File::Stat === path
- mode = path.mode
mode_sym.split(/,/).inject(mode & 07777) do |current_mode, clause|
target, *actions = clause.split(/([=+-])/)
raise ArgumentError, "invalid file mode: #{mode_sym}" if actions.empty?
@@ -935,7 +938,7 @@ module FileUtils
when "x"
mask | 0111
when "X"
- if path.directory?
mask | 0111
else
mask