diff options
-rw-r--r-- | lib/rubygems/package.rb | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -527,12 +527,13 @@ EOM # Loads a Gem::Specification from the TarEntry +entry+ def load_spec(entry) # :nodoc: case entry.full_name when "metadata" then - @spec = Gem::Specification.from_yaml entry.read when "metadata.gz" then Zlib::GzipReader.wrap(entry, external_encoding: Encoding::UTF_8) do |gzio| - @spec = Gem::Specification.from_yaml gzio.read end end end @@ -556,7 +557,7 @@ EOM @checksums = gem.seek "checksums.yaml.gz" do |entry| Zlib::GzipReader.wrap entry do |gz_io| - Gem::SafeYAML.safe_load gz_io.read end end end @@ -663,7 +664,7 @@ EOM case file_name when /\.sig$/ then - @signatures[$`] = entry.read if @security_policy return else digest entry @@ -714,7 +715,7 @@ EOM raise Gem::Package::FormatError.new(e.message, entry.full_name) end - if RUBY_ENGINE == "truffleruby" def copy_stream(src, dst) # :nodoc: dst.write src.read end @@ -723,6 +724,12 @@ EOM IO.copy_stream(src, dst) end end end require_relative "package/digest_io" |