Merge pull request #318 from daenney/unicode-fix
authorMorgan Haskel <morgan@puppetlabs.com>
Thu, 26 Jun 2014 17:55:38 +0000 (13:55 -0400)
committerMorgan Haskel <morgan@puppetlabs.com>
Thu, 26 Jun 2014 17:55:38 +0000 (13:55 -0400)
MODULES-780 Don't blow up on unicode characters.

lib/puppet/provider/apt_key/apt_key.rb

index f8d40728b04a13727d32f1ede6cd2eebe4eb52ac..1d3c1744b586ccd5ee0d2fb0e3eed29007a986ad 100644 (file)
@@ -26,6 +26,11 @@ Puppet::Type.type(:apt_key).provide(:apt_key) do
   commands   :apt_key  => 'apt-key'
 
   def self.instances
+    if RUBY_VERSION > '1.8.7'
+      key_output = apt_key('list').encode('UTF-8', 'binary', :invalid => :replace, :undef => :replace, :replace => '')
+    else
+      key_output = apt_key('list')
+    end
     key_array = apt_key('list').split("\n").collect do |line|
       line_hash = key_line_hash(line)
       next unless line_hash