Skip to content
  • nagachika's avatar
    c91b7154
    merge revision(s) 64007,64019,64020: [Backport #14929] · c91b7154
    nagachika authored
    	thread.c (do_select): fix leak on exception
    
    	When do_select is interrupted and raise happens from
    	RUBY_VM_CHECK_INTS_BLOCKING, the original FD sets we copied
    	do not get freed, leading to a memory leak.  Wrap up all the
    	FD sets into a Ruby object to ensure the GC can release an
    	allocations made for rb_fdset_t.
    
    	This leak existed since Ruby 2.0.0 (r36430)
    
    	[Bug #14929]
    
    	increase timeout seconds.
    	* test/ruby/test_io.rb (test_select_leak): increase timeout seconds
    	  to pass this test on a high-load machine.
    
    
    	60 sec is not enough at all
    
    
    git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_5@64605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
    c91b7154
    merge revision(s) 64007,64019,64020: [Backport #14929]
    nagachika authored
    	thread.c (do_select): fix leak on exception
    
    	When do_select is interrupted and raise happens from
    	RUBY_VM_CHECK_INTS_BLOCKING, the original FD sets we copied
    	do not get freed, leading to a memory leak.  Wrap up all the
    	FD sets into a Ruby object to ensure the GC can release an
    	allocations made for rb_fdset_t.
    
    	This leak existed since Ruby 2.0.0 (r36430)
    
    	[Bug #14929]
    
    	increase timeout seconds.
    	* test/ruby/test_io.rb (test_select_leak): increase timeout seconds
    	  to pass this test on a high-load machine.
    
    
    	60 sec is not enough at all
    
    
    git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_5@64605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Loading