From 0ebb7c1c9bd4d87599e948b8af6ed9d12409681a Mon Sep 17 00:00:00 2001 From: akr Date: Sun, 23 Aug 2009 06:15:00 +0000 Subject: * bootstraptest/runner.rb (Dir.mktmpdir): updated to latest. (in_temporary_working_directory): temporary directory name changed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ bootstraptest/runner.rb | 18 ++++++++++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9e23dc6074..e17d87963c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sun Aug 23 15:12:22 2009 Tanaka Akira + + * bootstraptest/runner.rb (Dir.mktmpdir): updated to latest. + (in_temporary_working_directory): temporary directory name changed. + Sun Aug 23 00:56:13 2009 Tanaka Akira * thread.c (rb_thread_schedule): don't recur infinitely. @@ -10624,6 +10629,7 @@ Sun Dec 14 12:51:48 2008 Yusuke Endoh * random.c (rb_rand_internal): used by Bignum#*. * test/ruby/test_bignum.rb: add some tests for above. + Sun Dec 14 01:35:48 2008 Tanaka Akira * process.c (forked_child): new variable. diff --git a/bootstraptest/runner.rb b/bootstraptest/runner.rb index 1ba15fd207..047633c788 100755 --- a/bootstraptest/runner.rb +++ b/bootstraptest/runner.rb @@ -17,13 +17,27 @@ end if !Dir.respond_to?(:mktmpdir) # copied from lib/tmpdir.rb - def Dir.mktmpdir(prefix="d", tmpdir=nil) + def Dir.mktmpdir(prefix_suffix=nil, tmpdir=nil) + case prefix_suffix + when nil + prefix = "d" + suffix = "" + when String + prefix = prefix_suffix + suffix = "" + when Array + prefix = prefix_suffix[0] + suffix = prefix_suffix[1] + else + raise ArgumentError, "unexpected prefix_suffix: #{prefix_suffix.inspect}" + end tmpdir ||= Dir.tmpdir t = Time.now.strftime("%Y%m%d") n = nil begin path = "#{tmpdir}/#{prefix}#{t}-#{$$}-#{rand(0x100000000).to_s(36)}" path << "-#{n}" if n + path << suffix Dir.mkdir(path, 0700) rescue Errno::EEXIST n ||= 0 @@ -339,7 +353,7 @@ def in_temporary_working_directory(dir) yield } else - Dir.mktmpdir("bootstraptest.tmpwd") {|d| + Dir.mktmpdir(["bootstraptest", ".tmpwd"]) {|d| Dir.chdir(d) { yield } -- cgit v1.2.3