# File lib/childprocess/windows/functions.rb, line 102 def self.duplicate_handle(handle) dup = FFI::MemoryPointer.new(:pointer) proc = current_process ok = _duplicate_handle( proc, handle, proc, dup, 0, false, DUPLICATE_SAME_ACCESS) ok or raise Error, last_error_message dup.read_pointer ensure close_handle proc end