#1402: Errno::EBADF occurs when repeats reading/writing the file. ----------------------------------+----------------------------------------- Reporter: watson1978@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: ----------------------------------+----------------------------------------- Comment(by watson1978@…): IO#sysopen creates the IO's object, and returns file descriptor from its object. [[BR]] When invoked GC finalizer for its object, it seems to occurs Errno::EBADF. 1. IO#sysopen creates IO's object, returns file descriptor. 2. IO.new creates IO's object from file descriptor. 3. GC finalizer run for object of IO#sysopen - invoke rb_objc_io_finalize - -> close file descriptor by rb_io_close - -> same descriptor number is used by IO.new's object. 4. IO#read -> Errno::EBADF I think that should not create an IO's object in IO#sysopen. -- Ticket URL: <http://www.macruby.org/trac/ticket/1402#comment:1> MacRuby <http://macruby.org/>