diff options
-rw-r--r-- | lib/tempfile.rb | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/tempfile.rb b/lib/tempfile.rb index 4148d30a86..5f8a345bee 100644 --- a/lib/tempfile.rb +++ b/lib/tempfile.rb @@ -270,6 +270,13 @@ class Tempfile < DelegateClass(File) # object will be automatically closed after the block terminates. # The call returns the value of the block. # + # Unlike Tempfile.create, Tempfile.open when called with a block + # does not unlink the temporary file when the block exits. When using + # Tempfile.open, the temporary file is not unlinked from the file + # system unless Tempfile#unlink or Tempfile#close! is called directly, + # or until the Tempfile instance is garbage collected. Due to this, + # most callers of Tempfile.open with a block should use Tempfile.create instead. + # # In any case, all arguments (<code>*args</code>) will be passed to Tempfile.new. # # Tempfile.open('foo', '/home/temp') do |f| @@ -290,7 +297,7 @@ class Tempfile < DelegateClass(File) begin yield(tempfile) ensure - tempfile.close! + tempfile.close end else tempfile |