summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-06-25 00:57:03 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-06-25 00:57:03 +0000
commit9f16d373f3fcd1113f82f1f2b48c990c78113094 (patch)
treeb9c0e426d0ad498689777b1521ef2e1010d610d2
parent13158c4d79aaf6d2d7f71804a5acf4bff0def168 (diff)
* test/ruby/envutil.rb (EnvUtil#invoke_ruby): get rid of possible
deadlock. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--test/ruby/envutil.rb4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 777b2471f5..f33df11774 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Fri Jun 25 09:56:39 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * test/ruby/envutil.rb (EnvUtil#invoke_ruby): get rid of possible
+ deadlock.
+
Fri Jun 25 06:24:25 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/un.rb (httpd): MaxClients also should be integer.
diff --git a/test/ruby/envutil.rb b/test/ruby/envutil.rb
index 7e52a8ffd7..5a81daab33 100644
--- a/test/ruby/envutil.rb
+++ b/test/ruby/envutil.rb
@@ -88,10 +88,10 @@ module EnvUtil
in_c.close
out_c.close if capture_stdout
err_c.close if capture_stderr
- in_p.write stdin_data.to_str
- in_p.close
th_stdout = Thread.new { out_p.read } if capture_stdout
th_stderr = Thread.new { err_p.read } if capture_stderr
+ in_p.write stdin_data.to_str
+ in_p.close
if (!capture_stdout || th_stdout.join(10)) && (!capture_stderr || th_stderr.join(10))
stdout = th_stdout.value if capture_stdout
stderr = th_stderr.value if capture_stderr