# File lib/rubygems/installer.rb, line 351
    def extract_files(directory, format)
      unless File.expand_path(directory) == directory then
        raise ArgumentError, "install directory %p not absolute" % directory
      end

      format.file_entries.each do |entry, file_data|
        path = entry['path'].untaint
        if path =~ /\A\// then # for extra sanity
          raise Gem::InstallError,
                "attempt to install file into #{entry['path'].inspect}"
        end
        path = File.expand_path File.join(directory, path)
        if path !~ /\A#{Regexp.escape directory}/ then
          msg = "attempt to install file into %p under %p" %
                  [entry['path'], directory]
          raise Gem::InstallError, msg
        end
        FileUtils.mkdir_p File.dirname(path)
        File.open(path, "wb") do |out|
          out.write file_data
        end
      end
    end