diff options
author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-07-27 03:14:49 +0000 |
---|---|---|
committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-07-27 03:14:49 +0000 |
commit | 3f539a5b5966d00f28bbae2617c006d93b491d17 (patch) | |
tree | cd53df83f6eea96eb602bd59714f476f69d32524 | |
parent | 9b16b7478a5e451f36d9be00977b3a16a3635b8e (diff) | |
download | ruby-3f539a5b5966d00f28bbae2617c006d93b491d17.tar.gz |
* win32/mkexports.rb: should not export DllMain().
reported by luis at [ruby-core:46743] [Bug #6790], solved by
Heesob Park, and confirmed by nobu.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 6 | ||||
-rwxr-xr-x | win32/mkexports.rb | 4 |
2 files changed, 8 insertions, 2 deletions
@@ -1,3 +1,9 @@ +Fri Jul 27 12:12:36 2012 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/mkexports.rb: should not export DllMain(). + reported by luis at [ruby-core:46743] [Bug #6790], solved by + Heesob Park, and confirmed by nobu. + Thu Jul 26 14:51:29 2012 URABE Shyouhei <shyouhei@ruby-lang.org> * test/net/http/test_https.rb (TestNetHTTPS#test_session_reuse): diff --git a/win32/mkexports.rb b/win32/mkexports.rb index 3a1a91a586..62d48cfce1 100755 --- a/win32/mkexports.rb +++ b/win32/mkexports.rb @@ -116,7 +116,7 @@ class Exports::Mswin < Exports is_data = !$1 if noprefix or /^[@_]/ =~ l next if /(?!^)@.*@/ =~ l || /@[[:xdigit:]]{8,16}$/ =~ l || - /^_(?:Init_|.*_threadptr_|DllMain@)/ =~ l + /^_?(?:Init_|.*_threadptr_|DllMain\b)/ =~ l l.sub!(/^[@_]/, '') if /@\d+$/ !~ l elsif !l.sub!(/^(\S+) \([^@?\`\']*\)$/, '\1') next @@ -150,7 +150,7 @@ class Exports::Cygwin < Exports def each_export(objs) symprefix = RbConfig::CONFIG["SYMBOL_PREFIX"] symprefix.strip! if symprefix - re = /\s(?:(T)|[[:upper:]])\s#{symprefix}((?!Init_|.*_threadptr_|DllMain@).*)$/ + re = /\s(?:(T)|[[:upper:]])\s#{symprefix}((?!Init_|.*_threadptr_|DllMain\b).*)$/ objdump(objs) do |l| next if /@.*@/ =~ l yield $2, !$1 if re =~ l |