lib/geminabox/server.rb in geminabox-0.12.3 vs lib/geminabox/server.rb in geminabox-0.12.4
- old
+ new
@@ -239,10 +239,13 @@
helpers do
def spec_for(gem_name, version, platform = default_platform)
filename = [gem_name, version]
filename.push(platform) if platform != default_platform
spec_file = File.join(settings.data, "quick", "Marshal.#{Gem.marshal_version}", "#{filename.join("-")}.gemspec.rz")
- Marshal.load(Gem.inflate(File.read(spec_file))) if File.exists? spec_file
+ File::open(spec_file, 'r') do |unzipped_spec_file|
+ unzipped_spec_file.binmode
+ Marshal.load(Gem.inflate(unzipped_spec_file.read))
+ end if File.exists? spec_file
end
def default_platform
'ruby'
end