Issue #12346 has been reported by Allen Hewes.

----------------------------------------
Bug #12346: Ruby 2.3.0 64-bit (mingw64-32) WIN32OLE_TYPE.typelibs seg faults on Windows 10 64-bit
https://bugs.ruby-lang.org/issues/12346

* Author: Allen Hewes
* Status: Open
* Priority: Normal
* Assignee: cruby-windows
* ruby -v: ruby 2.3.0p0 (2015-12-25 revision 53290) [x64-mingw32]
* Backport: 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN
----------------------------------------
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:

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:
  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

---Files--------------------------------
ruby-2.3.0p0-test_s_typelibs-collect-seg-fault.txt (13.9 KB)
ruby-2.3.0p0-test_s_typelibs-seg-fault.txt (14.6 KB)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>