Project

General

Profile

Bug #12346

Updated by nobu (Nobuyoshi Nakada) over 8 years ago

Ruby Windows binaries are from RubyInstaller.org. 

 Seg fault also happens with Ruby 2.3.1 using the same 64-bit DevKit. 

 in the test suite file test/win32ole/test_win32ole_type.rb, there is the test 
 `test_s_typelibs`: test_s_typelibs: 

 ```ruby 
 def test_s_typelibs  
   tlibs = WIN32OLE_TYPE.typelibs.sort  
   tlibs2 = WIN32OLE_TYPELIB.typelibs.collect{|t|t.name}.sort 
   assert_equal(tlibs2, tlibs)  
 end  
 ``` 

  

 Ruby 2.3.0 64-bit produces segmentation fault at both places: 

 ```ruby 
   tlibs = WIN32OLE_TYPE.typelibs.sort 
   tlibs2 = WIN32OLE_TYPELIB.typelibs.collect{|t|t.name}.sort  
 ``` 

  

 very basic one line check for each test: 

 ``` 
 ruby.exe -e "require 'win32ole'" -e "puts WIN32OLE_TYPE.typelibs.count" 
 ruby.exe -e "require 'win32ole'" -e "puts WIN32OLE_TYPELIB.typelibs.collect{|t|t.name}.count" 
 ``` 

 fails in: 
 ruby-2.3.0-x64-mingw32 (see attachments) 

 works in: 
 ruby-2.3.0-i386-mingw32 (572) 
 ruby-2.2.4-i386-mingw32 (572) 
 ruby-2.2.4-x64-mingw32 (574) 
 ruby-2.1.8-i386-mingw32 (572) 
 ruby-2.1.8-x64-mingw32 (574) 

 I've attached the crash outputs for both: 

 ``` 
 WIN32OLE_TYPE.typelibs.sort = ruby-2.3.0p0-test_s_typelibs-seg-fault.txt 
 WIN32OLE_TYPELIB.typelibs.collect{|t|t.name}.sort = ruby-2.3.0p0-test_s_typelibs-collect-seg-fault.txt 
 ``` 
 ``` 
 

 systeminfo | findstr /R /C:"^OS [Name|Version]" /C:"^Hotfix" /C:"KB" 
 OS Name:                     Microsoft Windows 10 Pro 
 OS Version:                  10.0.10586 N/A Build 10586 
 Hotfix(s):                   15 Hotfix(s) Installed. 
                            [01]: KB2693643 
                            [02]: KB3105211 
                            [03]: KB3116900 
                            [04]: KB3120677 
                            [05]: KB3122947 
                            [06]: KB3124200 
                            [07]: KB3124262 
                            [08]: KB3124263 
                            [09]: KB3135173 
                            [10]: KB3139907 
                            [11]: KB3140741 
                            [12]: KB3140743 
                            [13]: KB3140768 
                            [14]: KB3154132 
                            [15]: KB3147458

Back