ruby-changes:16512
From: yugui <ko1@a...>
Date: Thu, 1 Jul 2010 11:05:48 +0900 (JST)
Subject: [ruby-changes:16512] Ruby:r28502 (ruby_1_9_2): merges r28442 from trunk into ruby_1_9_2.
yugui 2010-07-01 11:05:22 +0900 (Thu, 01 Jul 2010) New Revision: 28502 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=28502 Log: merges r28442 from trunk into ruby_1_9_2. -- * test/win32ole/test_win32ole_method.rb (test_offset_vtbl): check that OS is Windows 32bit or Windows 64bit in order to get correct offset value. Modified files: branches/ruby_1_9_2/ChangeLog branches/ruby_1_9_2/test/win32ole/test_win32ole_method.rb Index: ruby_1_9_2/ChangeLog =================================================================== --- ruby_1_9_2/ChangeLog (revision 28501) +++ ruby_1_9_2/ChangeLog (revision 28502) @@ -1,3 +1,9 @@ +Sat Jun 26 07:59:18 2010 Masaki Suketa <masaki.suketa@n...> + + * test/win32ole/test_win32ole_method.rb (test_offset_vtbl): check + that OS is Windows 32bit or Windows 64bit in order to get + correct offset value. + Fri Jun 25 11:45:36 2010 James Edward Gray II <jeg2@r...> * lib/csv.rb: Fixing a bug that prevented CSV from parsing Index: ruby_1_9_2/test/win32ole/test_win32ole_method.rb =================================================================== --- ruby_1_9_2/test/win32ole/test_win32ole_method.rb (revision 28501) +++ ruby_1_9_2/test/win32ole/test_win32ole_method.rb (revision 28502) @@ -108,8 +108,29 @@ assert_equal(1610743810, @m_namespace.dispid) end + def is_win64? + if /win64$/ =~ RUBY_PLATFORM + return true + end + require 'Win32API' + get_current_process = Win32API.new('kernel32', 'GetCurrentProcess', nil, 'i') + handle = get_current_process.call + is_wow64 = false + begin + is_wow64_process = Win32API.new('Kernel32', 'IsWow64Process', ['i', 'p'], 'i') + bool = "\0\0\0\0" + if is_wow64_process.call(handle, bool) != 0 + is_wow64 = bool != "\0\0\0\0" + end + rescue RuntimeError + # no IsWow64Process + end + is_wow64 + end + def test_offset_vtbl - assert_equal(24, @m_invoke.offset_vtbl) + exp = is_win64? ? 48 : 24 + assert_equal(exp, @m_invoke.offset_vtbl) end def test_size_params -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/