summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--lib/test/unit.rb3
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 43838901de..93ffa9faaf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Jan 2 14:55:28 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
+
+ * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): find may
+ return nil and nil can not dup.
+
Sun Jan 1 12:23:10 2012 Akinori MUSHA <knu@iDaemons.org>
* lib/shellwords.rb (Shellwords#shellescape): Drop the //n flag
diff --git a/lib/test/unit.rb b/lib/test/unit.rb
index 00313a3237..1bee643c31 100644
--- a/lib/test/unit.rb
+++ b/lib/test/unit.rb
@@ -433,8 +433,9 @@ module Test
while stat = Process.wait2
break if @interrupt # Break when interrupt
pid, stat = stat
- w = (@workers + @dead_workers).find{|x| pid == x.pid }.dup
+ w = (@workers + @dead_workers).find{|x| pid == x.pid }
next unless w
+ w = w.dup
if w.status != :quit && !w.quit_called?
# Worker down
w.died(nil, !stat.signaled? && stat.exitstatus)