[#11073] segfault printing instruction sequence for iterator — <noreply@...>

Bugs item #10527, was opened at 2007-05-02 14:42

14 messages 2007/05/02
[#11142] Re: [ ruby-Bugs-10527 ] segfault printing instruction sequence for iterator — Nobuyoshi Nakada <nobu@...> 2007/05/10

Hi,

[#11188] Re: [ ruby-Bugs-10527 ] segfault printing instruction sequence for iterator — Paul Brannan <pbrannan@...> 2007/05/16

On Thu, May 10, 2007 at 04:51:18PM +0900, Nobuyoshi Nakada wrote:

[#11234] Planning to release 1.8.6 errata — Urabe Shyouhei <shyouhei@...>

Hi all.

17 messages 2007/05/25

[ ruby-Bugs-6764 ] tempfile.rb should let you preserve a file

From: <noreply@...>
Date: 2007-05-30 01:44:13 UTC
List: ruby-core #11334
Bugs item #6764, was opened at 2006-11-18 10:09
You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=6764&group_id=426

Category: Files / Dirs / IO
Group: None
>Status: Closed
>Resolution: Rejected
Priority: 3
Submitted By: David Welton (davidw)
Assigned to: Nobody (None)
Summary: tempfile.rb should let you preserve a file

Initial Comment:
Hello, this is not a bug but a feature request.  Perhaps these should be addressed to some other place?  In any case:

There are times when it would be nice to not automatically delete Tempfiles - when debugging for instance, but also in cases when an error occurs and you want to be able to examine what was going on.  What would be fantastic is a 'preserve' method that you can call that prevents the file from being 'reaped'.  I wasn't able to implement a patch to do this, unfortunately.

----------------------------------------------------------------------

>Comment By: Ryan Davis (zenspider)
Date: 2007-05-29 18:44

Message:
Alternatively, if you're debugging you can do something like the following:

file_klass = $DEBUG ? File : Tempfile

file_klass.open "blah.txt" do |f|
  # ...
end

or, always use Tempfile.open but move the file if you want to keep it:

Tempfile.open("blah.txt") do |f|
  # ...
  File.rename f.path, "keep.txt" if $DEBUG
end


----------------------------------------------------------------------

Comment By: Shyouhei Urabe (shyouhei)
Date: 2007-05-29 16:03

Message:
Tempfiles won't be unlinked until:

(1) you pass a non-false value to the argument to Tempfile#close
(2) or the GC collects the instance

so if you want not delete a Tempfile, just hold the instance.

f = Tempfile.new("foo")
...
f.close(false) # preserve
...
f = nil # and GC will delete the file

----------------------------------------------------------------------

You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=6764&group_id=426

In This Thread

Prev Next