aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-05-07 12:04:19 +0000
committeraamine <aamine@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-05-07 12:04:19 +0000
commit876aa19435d43da902ccfe6768342a613b72851a (patch)
tree01079890f150f479d0b22d4ff9441afc234ae361
parent58860e0d64fa67081a122e80c0004bdd345dc45e (diff)
downloadruby-876aa19435d43da902ccfe6768342a613b72851a.tar.gz
* lib/fileutils.rb (fu_list): Array() breaks pathes including "\n". [ruby-core:02843]
* test/fileutils/test_fileutils.rb (mkdir): test "\n" in path. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--lib/fileutils.rb2
-rw-r--r--test/fileutils/test_fileutils.rb18
3 files changed, 26 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 1463e25a53..8374f60cda 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Fri May 7 21:03:51 2004 Minero Aoki <aamine@loveruby.net>
+
+ * lib/fileutils.rb (fu_list): Array() breaks pathes including "\n".
+ [ruby-core:02843]
+
+ * test/fileutils/test_fileutils.rb (mkdir): test "\n" in path.
+
Fri May 7 11:17:27 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>
* util.c (ruby_strtod): 0.0000000000000000001 == 0.0 should be false.
diff --git a/lib/fileutils.rb b/lib/fileutils.rb
index c15478ca1b..58513b2f87 100644
--- a/lib/fileutils.rb
+++ b/lib/fileutils.rb
@@ -717,7 +717,7 @@ module FileUtils
end
def fu_list(arg)
- Array(arg).map {|path| File.path(path) }
+ [arg].flatten.map {|path| File.path(path) }
end
def fu_each_src_dest(src, dest)
diff --git a/test/fileutils/test_fileutils.rb b/test/fileutils/test_fileutils.rb
index 6d8810b8f8..950e20499c 100644
--- a/test/fileutils/test_fileutils.rb
+++ b/test/fileutils/test_fileutils.rb
@@ -51,6 +51,18 @@ def have_hardlink?
HAVE_HARDLINK
end
+begin
+ Dir.mkdir("\n")
+ Dir.rmdir("\n")
+ def lf_in_path_allowed?
+ true
+ end
+rescue
+ def lf_in_path_allowed?
+ false
+ end
+end
+
Dir.chdir prevdir
Dir.rmdir tmproot
@@ -532,6 +544,12 @@ end
assert_equal 0700, (File.stat('tmp/tmp').mode & 0777) if have_file_perm?
Dir.rmdir 'tmp/tmp'
+if lf_in_path_allowed?
+ mkdir "tmp-first-line\ntmp-second-line"
+ assert_directory "tmp-first-line\ntmp-second-line"
+ Dir.rmdir "tmp-first-line\ntmp-second-line"
+end
+
# pathname
assert_nothing_raised {
mkdir Pathname.new('tmp/tmpdirtmp')