summaryrefslogtreecommitdiffstats
path: root/lib/puppet
diff options
context:
space:
mode:
authorPieter van de Bruggen <pieter@puppetlabs.com>2011-03-30 15:27:59 -0700
committerPieter van de Bruggen <pieter@puppetlabs.com>2011-03-30 15:28:23 -0700
commit505a48c0d316aad7ff26ae2c0ade294707ca081e (patch)
tree2a52b6408f95b858f889c3749e9b55caa95b88a9 /lib/puppet
parent23248285648b39ca771fc93988420d93d80506e5 (diff)
downloadpuppet-505a48c0d316aad7ff26ae2c0ade294707ca081e.tar.gz
puppet-505a48c0d316aad7ff26ae2c0ade294707ca081e.tar.xz
puppet-505a48c0d316aad7ff26ae2c0ade294707ca081e.zip
(Maint) Bugfix for failing requires inside Puppet Strings.
Paired-With: Matt Robinson
Diffstat (limited to 'lib/puppet')
-rw-r--r--lib/puppet/string/string_collection.rb13
1 files changed, 7 insertions, 6 deletions
diff --git a/lib/puppet/string/string_collection.rb b/lib/puppet/string/string_collection.rb
index 45a192703..f8fa38b9c 100644
--- a/lib/puppet/string/string_collection.rb
+++ b/lib/puppet/string/string_collection.rb
@@ -41,20 +41,21 @@ module Puppet::String::StringCollection
loaded = cache.keys
- files = ["puppet/string/#{name}"]
+ module_names = ["puppet/string/#{name}"]
unless version == :current
- files << "#{name}@#{version}/puppet/string/#{name}"
+ module_names << "#{name}@#{version}/puppet/string/#{name}"
end
- files.each do |file|
+ module_names.each do |module_name|
begin
- require file
- if version == :current || !file.include?('@')
+ require module_name
+ if version == :current || !module_name.include?('@')
loaded = (cache.keys - loaded).first
cache[:current] = cache[loaded] unless loaded.nil?
end
return true if cache.has_key?(version)
- rescue LoadError
+ rescue LoadError => e
+ raise unless e.message =~ /-- #{module_name}$/
# pass
end
end