From 6c42a1034b5833fd227a3d6c1f32833a6e035314 Mon Sep 17 00:00:00 2001 From: Thomas Lamprecht Date: Sat, 25 Apr 2020 18:54:45 +0200 Subject: [PATCH] parse_sync_opts: code cleanup avoid confusion between fmt default and cfg default Signed-off-by: Thomas Lamprecht --- PVE/API2/Domains.pm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/PVE/API2/Domains.pm b/PVE/API2/Domains.pm index 18698c0..d2d9a2b 100644 --- a/PVE/API2/Domains.pm +++ b/PVE/API2/Domains.pm @@ -371,16 +371,17 @@ my $parse_sync_opts = sub { my $sync_opts_fmt = PVE::JSONSchema::get_format('realm-sync-options'); - my $res = {}; - my $defaults = {}; + my $cfg_defaults = {}; if (defined(my $cfg_opts = $realmconfig->{'sync-defaults-options'})) { - $defaults = PVE::JSONSchema::parse_property_string($sync_opts_fmt, $cfg_opts); + $cfg_defaults = PVE::JSONSchema::parse_property_string($sync_opts_fmt, $cfg_opts); } + my $res = {}; for my $opt (sort keys %$sync_opts_fmt) { my $fmt = $sync_opts_fmt->{$opt}; - $res->{$opt} = $param->{$opt} // $defaults->{$opt} // $fmt->{default}; + $res->{$opt} = $param->{$opt} // $cfg_defaults->{$opt} // $fmt->{default}; + raise_param_exc({ "$opt" => 'Not passed as parameter and not defined in realm default sync options.' }) if !defined($res->{$opt}); -- 2.39.2