aboutsummaryrefslogtreecommitdiffstats
path: root/lib/fileutils.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/fileutils.rb')
-rw-r--r--lib/fileutils.rb9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/fileutils.rb b/lib/fileutils.rb
index 8daf923c78..7f14f138d9 100644
--- a/lib/fileutils.rb
+++ b/lib/fileutils.rb
@@ -154,6 +154,11 @@ module FileUtils
end
module_function :uptodate?
+ def remove_tailing_slash(dir)
+ dir == '/' ? dir : dir.chomp(?/)
+ end
+ private_module_function :remove_tailing_slash
+
#
# Options: mode noop verbose
#
@@ -200,7 +205,7 @@ module FileUtils
fu_output_message "mkdir -p #{options[:mode] ? ('-m %03o ' % options[:mode]) : ''}#{list.join ' '}" if options[:verbose]
return *list if options[:noop]
- list.map {|path| path.chomp(?/) }.each do |path|
+ list.map {|path| remove_tailing_slash(path)}.each do |path|
# optimize for the most common case
begin
fu_mkdir path, options[:mode]
@@ -237,7 +242,7 @@ module FileUtils
OPT_TABLE['makedirs'] = [:mode, :noop, :verbose]
def fu_mkdir(path, mode) #:nodoc:
- path = path.chomp(?/)
+ path = remove_tailing_slash(path)
if mode
Dir.mkdir path, mode
File.chmod mode, path