From ffe0b0e0756c17e06735e0e8ef681f2317a555ef Mon Sep 17 00:00:00 2001 From: Thomas Lamprecht Date: Fri, 13 Mar 2020 11:01:01 +0100 Subject: [PATCH] runtest: clone config before passing to write to avoid side effects write changes some parts of the config, if this is a reference to the config used for checking parsing it may lead to unexpected failures due to those side effects.. For me it was "cidr" and "cidr6" getting deleted, and thus upcomming tests for a compat change failing without any apparent reason.. :/ Signed-off-by: Thomas Lamprecht --- test/etc_network_interfaces/runtest.pl | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/test/etc_network_interfaces/runtest.pl b/test/etc_network_interfaces/runtest.pl index c067dd1..b5277c3 100755 --- a/test/etc_network_interfaces/runtest.pl +++ b/test/etc_network_interfaces/runtest.pl @@ -8,6 +8,7 @@ use warnings; use Carp; use POSIX; use IO::Handle; +use Storable qw(dclone); use PVE::INotify; @@ -74,7 +75,9 @@ sub r($;$$) { # Turn the current network config into a string. sub w() { - return PVE::INotify::__write_etc_network_interfaces($config); + # write shouldn't be able to change a previously parsed config + my $config_clone = dclone($config); + return PVE::INotify::__write_etc_network_interfaces($config_clone); } ## -- 2.39.2