summaryrefslogtreecommitdiffstats
path: root/lib/puppet/parser
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/parser')
-rw-r--r--lib/puppet/parser/resource.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/puppet/parser/resource.rb b/lib/puppet/parser/resource.rb
index d4c7a1f0f..47dc798b3 100644
--- a/lib/puppet/parser/resource.rb
+++ b/lib/puppet/parser/resource.rb
@@ -289,6 +289,10 @@ class Puppet::Parser::Resource
if v.is_a?(Puppet::Parser::Resource::Reference)
v = Puppet::Resource::Reference.new(v.type, v.title)
elsif v.is_a?(Array)
+ # flatten resource references arrays
+ if v.flatten.find { |av| av.is_a?(Puppet::Parser::Resource::Reference) }
+ v = v.flatten
+ end
v = v.collect do |av|
if av.is_a?(Puppet::Parser::Resource::Reference)
av = Puppet::Resource::Reference.new(av.type, av.title)