if a file does not exist PVE::Tools::file_read_firstline returns undef.

This happens e.g. if you install the libpve-network-perl package before
creating the local sdn file.

Signed-off-by: Stoiko Ivanov <s.iva...@proxmox.com>
---
caught in my journal after installing updates today:
May 05 17:17:20 rosa pvestatd[21735]: Use of uninitialized value $versionstr in 
pattern match (m//) at /usr/share/perl5/PVE/Network/SDN/Zones.pm line 141.

 PVE/Network/SDN/Zones.pm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/PVE/Network/SDN/Zones.pm b/PVE/Network/SDN/Zones.pm
index dbb1f30..2ca967f 100644
--- a/PVE/Network/SDN/Zones.pm
+++ b/PVE/Network/SDN/Zones.pm
@@ -138,6 +138,9 @@ sub write_etc_network_config {
 
 sub read_etc_network_config_version {
     my $versionstr = PVE::Tools::file_read_firstline($local_network_sdn_file);
+
+    return if !defined($versionstr);
+
     if ($versionstr =~ m/^\#version:(\d+)$/) {
        return $1;
     }
-- 
2.20.1


_______________________________________________
pve-devel mailing list
pve-devel@pve.proxmox.com
https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to