diff options
author | Brice Figureau <brice-puppet@daysofwonder.com> | 2009-03-23 23:17:11 +0100 |
---|---|---|
committer | James Turnbull <james@lovedthanlost.net> | 2009-03-27 00:05:52 +1100 |
commit | cbee426854c09fae4d9675edb787d4563e9b9ac8 (patch) | |
tree | 32d00df2fc3d10486e4aa2f29337006fd6093aa4 | |
parent | 3b4816b842f1dc3febe95df2b9ae25cfabc5a2df (diff) | |
download | puppet-cbee426854c09fae4d9675edb787d4563e9b9ac8.tar.gz puppet-cbee426854c09fae4d9675edb787d4563e9b9ac8.tar.xz puppet-cbee426854c09fae4d9675edb787d4563e9b9ac8.zip |
Fix #2101 - Return to recurse=0 == no recursion behavior
Ticket #1469 introduced an incorrect change of behaviour where
recurse = 0 was considered as an infinite recursion, unlike
before.
This patch restores this behavior, and makes some test pass.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
-rw-r--r-- | lib/puppet/type/file.rb | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/puppet/type/file.rb b/lib/puppet/type/file.rb index 05a4b37f9..0cd9ebece 100644 --- a/lib/puppet/type/file.rb +++ b/lib/puppet/type/file.rb @@ -128,11 +128,20 @@ module Puppet when :remote: :remote when Integer, Fixnum, Bignum: self.warning "Setting recursion depth with the recurse parameter is now deprecated, please use recurselimit" + + # recurse == 0 means no recursion + return false if value == 0 + resource[:recurselimit] = value true when /^\d+$/: self.warning "Setting recursion depth with the recurse parameter is now deprecated, please use recurselimit" - resource[:recurselimit] = Integer(value) + value = Integer(value) + + # recurse == 0 means no recursion + return false if value == 0 + + resource[:recurselimit] = value true else raise ArgumentError, "Invalid recurse value %s" % value.inspect |