diff --git a/ChangeLog b/ChangeLog index d84d268298..59971d8280 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Aug 16 18:52:08 2011 Nobuyoshi Nakada + + * win32/mkexports.rb (Exports::Mswin#each_export): exclude Init_ + and _threadptr_ functions, as well as mingw. + Tue Aug 16 09:31:44 2011 Eric Hodel * ext/dl: Add documentation. Patch by Vincent Batts. diff --git a/win32/mkexports.rb b/win32/mkexports.rb index 06f8c8ddbb..9b450519ce 100755 --- a/win32/mkexports.rb +++ b/win32/mkexports.rb @@ -111,7 +111,8 @@ class Exports::Mswin < Exports next unless l.sub!(/.*?\s(\(\)\s+)?External\s+\|\s+/, '') is_data = !$1 if noprefix or /^[@_]/ =~ l - next if /(?!^)@.*@/ =~ l || /@[[:xdigit:]]{8,16}$/ =~ l || /^_DllMain@/ =~ l + next if /(?!^)@.*@/ =~ l || /@[[:xdigit:]]{8,16}$/ =~ l || + /^_(?:Init_|.*_threadptr_|DllMain@)/ =~ l l.sub!(/^[@_]/, '') if /@\d+$/ !~ l elsif !l.sub!(/^(\S+) \([^@?\`\']*\)$/, '\1') next