summaryrefslogtreecommitdiff
path: root/lib/chef/provider/registry_key.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chef/provider/registry_key.rb')
-rw-r--r--lib/chef/provider/registry_key.rb21
1 files changed, 15 insertions, 6 deletions
diff --git a/lib/chef/provider/registry_key.rb b/lib/chef/provider/registry_key.rb
index 7c7b190b95..6b226cc991 100644
--- a/lib/chef/provider/registry_key.rb
+++ b/lib/chef/provider/registry_key.rb
@@ -126,16 +126,22 @@ class Chef
value[:data] = value[:data].to_i
end
unless current_value[:type] == value[:type] && current_value[:data] == value[:data]
- converge_by_value = value
- converge_by_value[:data] = "*sensitive value suppressed*" if new_resource.sensitive
+ converge_by_value = if new_resource.sensitive
+ value.merge(data: "*sensitive value suppressed*")
+ else
+ value
+ end
converge_by("set value #{converge_by_value}") do
registry.set_value(new_resource.key, value)
end
end
else
- converge_by_value = value
- converge_by_value[:data] = "*sensitive value suppressed*" if new_resource.sensitive
+ converge_by_value = if new_resource.sensitive
+ value.merge(data: "*sensitive value suppressed*")
+ else
+ value
+ end
converge_by("set value #{converge_by_value}") do
registry.set_value(new_resource.key, value)
@@ -152,8 +158,11 @@ class Chef
end
new_resource.unscrubbed_values.each do |value|
unless @name_hash.key?(value[:name].downcase)
- converge_by_value = value
- converge_by_value[:data] = "*sensitive value suppressed*" if new_resource.sensitive
+ converge_by_value = if new_resource.sensitive
+ value.merge(data: "*sensitive value suppressed*")
+ else
+ value
+ end
converge_by("create value #{converge_by_value}") do
registry.set_value(new_resource.key, value)