summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rwxr-xr-xlib/tempfile.rb2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 5d353b4b5e..50d19c36c4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Sun May 30 21:48:07 2010 Yusuke Endoh <mame@tsg.ne.jp>
+
+ * lib/tempfile.rb (Tempfile#unlink): leave @data. Assigning nil to
+ @data caused double closing error of the same IO in finalizer. a
+ patch from Simon Nicholls. [ruby-core:29395]
+
Sun May 30 16:54:34 2010 Yusuke Endoh <mame@tsg.ne.jp>
* file.c (rb_file_directory_p): update rdoc. a patch from Ilkka
diff --git a/lib/tempfile.rb b/lib/tempfile.rb
index c45865d7a3..54f00de2b0 100755
--- a/lib/tempfile.rb
+++ b/lib/tempfile.rb
@@ -236,7 +236,7 @@ class Tempfile < DelegateClass(File)
end
# remove tmpname from remover
@data[0] = @data[2] = nil
- @data = @tmpname = nil
+ @tmpname = nil
rescue Errno::EACCES
# may not be able to unlink on Windows; just ignore
end