summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuerg Walz <jwalz@pobox.com>2011-03-08 12:39:25 +0800
committerJuerg Walz <jwalz@pobox.com>2011-03-08 12:39:25 +0800
commit58ac7d385ebaa8755fe44df5a3d2db98b4bf4693 (patch)
tree257450b6f5b4ca7562cf9f222a7263ae36fc6ac0
parent15a53f0ac79cb3f164750d53219d02ad6515f02c (diff)
downloadpuppet-58ac7d385ebaa8755fe44df5a3d2db98b4bf4693.tar.gz
puppet-58ac7d385ebaa8755fe44df5a3d2db98b4bf4693.tar.xz
puppet-58ac7d385ebaa8755fe44df5a3d2db98b4bf4693.zip
(#4258) pkgutil provider: better handling of short package names
-rwxr-xr-xlib/puppet/provider/package/pkgutil.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/puppet/provider/package/pkgutil.rb b/lib/puppet/provider/package/pkgutil.rb
index 0e2056b54..4a87932a8 100755
--- a/lib/puppet/provider/package/pkgutil.rb
+++ b/lib/puppet/provider/package/pkgutil.rb
@@ -56,7 +56,7 @@ Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun d
if hash[:justme]
# Ensure we picked up the package line, not any pkgutil noise.
- list.reject! { |h| h[:name] !~ /#{hash[:justme]}$/ }
+ list.reject! { |h| h[:name] != hash[:justme] }
return list[-1]
else
list.reject! { |h| h[:ensure] == :absent }
@@ -80,6 +80,10 @@ Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun d
end
hash[:avail] = $3
+ if justme !~ /^[A-Z]+/
+ hash[:name].sub! /^[A-Z]+/, ''
+ end
+
if hash[:avail] =~ /^SAME\s*$/
hash[:avail] = hash[:ensure]
end