summaryrefslogtreecommitdiffstats
path: root/lib/puppet/util/settings.rb
diff options
context:
space:
mode:
authorMarkus Roberts <Markus@reality.com>2010-03-24 19:38:43 -0700
committertest branch <puppet-dev@googlegroups.com>2010-02-17 06:50:53 -0800
commit6e04fbaf0a3c0e500d1fb0944fa02fbaaf2eb1b8 (patch)
tree79bd19e26d57e216545319d63ba023c8466eaf73 /lib/puppet/util/settings.rb
parent33b565a0d76b07f354e2e145e7e03e5a5db69e48 (diff)
downloadpuppet-6e04fbaf0a3c0e500d1fb0944fa02fbaaf2eb1b8.tar.gz
puppet-6e04fbaf0a3c0e500d1fb0944fa02fbaaf2eb1b8.tar.xz
puppet-6e04fbaf0a3c0e500d1fb0944fa02fbaaf2eb1b8.zip
Fix for #3366 - --tags '' treated as boolean 'true'
This is the patch from Mike Pountney <Mike.Pountney@gmail.com> off the list with the additional test Luke requested.
Diffstat (limited to 'lib/puppet/util/settings.rb')
-rw-r--r--lib/puppet/util/settings.rb7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/puppet/util/settings.rb b/lib/puppet/util/settings.rb
index 3a28c46a0..08d42d913 100644
--- a/lib/puppet/util/settings.rb
+++ b/lib/puppet/util/settings.rb
@@ -147,6 +147,7 @@ class Puppet::Util::Settings
@cache.clear
value = munge_value(value) if value
str = opt.sub(/^--/,'')
+
bool = true
newstr = str.sub(/^no-/, '')
if newstr != str
@@ -155,8 +156,10 @@ class Puppet::Util::Settings
end
str = str.intern
- if value == "" or value.nil?
- value = bool
+ if @config[str].is_a?(Puppet::Util::Settings::BooleanSetting)
+ if value == "" or value.nil?
+ value = bool
+ end
end
set_value(str, value, :cli)