Issue #3880 has been updated by Hiroshi Nakamura.

Status changed from Assigned to Feedback

Hi Elvita, sorry for late response. We're planning 1.9.3 release soon and we want to know if it still causes SEGV or not.

I installed RubyInstaller (ruby 1.9.2p180 (2011-02-18) [i386-mingw32]) and DevKit on Windows 7 64bit, then installed serialport 1.0.4 by a gem. For this env, basic serialport communication looks working.

Can you show us a way to replicate the bug on our side?
----------------------------------------
Bug #3880: Ruby 1.9.1 - crash in timeout.rb
http://redmine.ruby-lang.org/issues/3880

Author: Elvita Lobo
Status: Feedback
Priority: Normal
Assignee: Hiroshi Nakamura
Category: core
Target version: 1.9.3
ruby -v: ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-mingw32]


=begin
 I am using the serialport 1.0.4 Ruby gem. In my serial port connection code, I have the following piece of code [1] that causes Ruby to crash from time to time.
 
 [1] In serial_equipment_connection.rb
   23     status = Timeout::timeout(timeout) {
   24         while (!listener.match) 
   25             sleep 0.5
   26         end
   27     }
 
 ruby ???v
 ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-mingw32]
 
 I am running on a Windows XP SP 3 machine. 
 
 I have attached the two related files - serial_equipment_connection.rb, equipment_connection.rb, and the crash log. 
 
 [2] Crash log (file attached)
 
 MXP>(eval):2: [BUG] The handle is invalid.
 
 ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-mingw32]
 
 -- control frame ----------
 c:0044 p:0054 s:0226 b:0226 l:000225 d:000225 METHOD c:/Ruby191/lib/ruby/1.9.1/monitor.rb:178
 c:0043 p:---- s:0232 b:0232 l:000231 d:000231 CFUNC  :to_i
 c:0042 p:---- s:0235 b:0235 l:000234 d:000234 CFUNC  :instance_variable_set
 c:0041 p:0098 s:0230 b:0230 l:000229 d:000229 METHOD c:/Ruby191/lib/ruby/gems/1.9.1/gems/activesuppo
 rt-2.3.8/lib/active_support/core_ext/class/inheritable_attributes.rb:135
 c:0040 p:---- s:0226 b:0226 l:000225 d:000225 CFUNC  :index
 c:0039 p:---- s:0223 b:0223 l:000222 d:000222 CFUNC  :sleep
 c:0038 p:0019 s:0219 b:0219 l:001a24 d:000218 BLOCK  C:/VATF_source/target/serial_equipment_connecti
 on.rb:25
 c:0037 p:0109 s:0217 b:0217 l:002698 d:002698 METHOD c:/Ruby191/lib/ruby/1.9.1/timeout.rb:52
 c:0036 p:0153 s:0205 b:0205 l:001a24 d:001a24 METHOD C:/VATF_source/target/serial_equipment_connecti
 on.rb:23
 c:0035 p:0014 s:0194 b:0194 l:000193 d:000193 METHOD C:/VATF_source/target/equipment_connection.rb:5
 4
=end



-- 
http://redmine.ruby-lang.org