diff --git a/lib/puppet/parser/collector.rb b/lib/puppet/parser/collector.rb
index 2699dc6..c3bdce9 100644
--- a/lib/puppet/parser/collector.rb
+++ b/lib/puppet/parser/collector.rb
@@ -132,7 +132,13 @@ class Puppet::Parser::Collector
method = :virtual?
end
scope.compiler.resources.find_all do |resource|
- resource.type == @type and resource.send(method) and match?(resource)
+ if resource.is_a?(Array)
+ resource.each do |r|
+ r.type == @type and r.send(method) and match?(r)
+ end
+ else
+ resource.type == @type and resource.send(method) and match?(resource)
+ end
end
end