From ba021fb4be1128603487d9710195e5f13e1faf0b Mon Sep 17 00:00:00 2001 From: bronzdoc Date: Fri, 21 Jun 2019 19:37:09 -0600 Subject: [PATCH] Avoid adding OpenSSL::PKey::RSA instances --- lib/rubygems/specification.rb | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/rubygems/specification.rb b/lib/rubygems/specification.rb index a41cbde948df..d4290d9ffac2 100644 --- a/lib/rubygems/specification.rb +++ b/lib/rubygems/specification.rb @@ -2303,7 +2303,6 @@ def ruby_code(obj) when Time then obj.strftime('%Y-%m-%d').dump when Numeric then obj.inspect when true, false, nil then obj.inspect - when OpenSSL::PKey::RSA then obj.class when Gem::Platform then "Gem::Platform.new(#{obj.to_a.inspect})" when Gem::Requirement then list = obj.as_list @@ -2462,9 +2461,8 @@ def to_ruby @@attributes.each do |attr_name| next if handled.include? attr_name current_value = self.send(attr_name) - if current_value != default_value(attr_name) or - self.class.required_attribute? attr_name - result << " s.#{attr_name} = #{ruby_code current_value}" + if current_value != default_value(attr_name) || self.class.required_attribute?(attr_name) + result << " s.#{attr_name} = #{ruby_code current_value}" unless current_value.is_a?(OpenSSL::PKey::RSA) end end