зеркало из https://github.com/github/ruby.git
* ext/dl/lib/dl/win32.rb: elimitate unnecessary "A" adding.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
0af783bef4
Коммит
ada8110f7f
|
@ -1,3 +1,7 @@
|
|||
Mon Jan 13 02:22:11 2003 WATANABE Hirofumi <eban@ruby-lang.org>
|
||||
|
||||
* ext/dl/lib/dl/win32.rb: elimitate unnecessary "A" adding.
|
||||
|
||||
Sun Jan 12 16:07:17 2003 WATANABE Hirofumi <eban@ruby-lang.org>
|
||||
|
||||
* io.c (next_argv): inherit binmode from $defout.
|
||||
|
|
|
@ -8,15 +8,11 @@ class Win32API
|
|||
def initialize(dllname, func, import, export = "0")
|
||||
prototype = (export + import.to_s).tr("VPpNnLlIi", "0SSI")
|
||||
handle = DLL[dllname] ||= DL::Handle.new(dllname)
|
||||
begin
|
||||
@sym = handle.sym(func, prototype)
|
||||
rescue RuntimeError
|
||||
@sym = handle.sym(func + "A", prototype)
|
||||
end
|
||||
@sym = handle.sym(func, prototype)
|
||||
end
|
||||
|
||||
def call(*args)
|
||||
import = @sym.proto[1..-1] || ""
|
||||
import = @sym.split("", 2)[1]
|
||||
args.each_with_index do |x, i|
|
||||
args[i] = nil if x == 0 and import[i] == ?S
|
||||
args[i], = [x].pack("I").unpack("i") if import[i] == ?I
|
||||
|
|
Загрузка…
Ссылка в новой задаче