From ff24588236c778507043379af23720e813c2c426 Mon Sep 17 00:00:00 2001 From: sebastian-dev Date: Thu, 22 Oct 2020 14:17:25 +0200 Subject: [PATCH] Bugfix: Application crash when network interface is changed (#318) --- .../Hardware/Network/NetworkGroup.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/LibreHardwareMonitorLib/Hardware/Network/NetworkGroup.cs b/LibreHardwareMonitorLib/Hardware/Network/NetworkGroup.cs index dffb494..0c2fc13 100644 --- a/LibreHardwareMonitorLib/Hardware/Network/NetworkGroup.cs +++ b/LibreHardwareMonitorLib/Hardware/Network/NetworkGroup.cs @@ -73,14 +73,18 @@ namespace LibreHardwareMonitor.Hardware.Network var foundNetworkInterfaces = networkInterfaces.ToDictionary(x => x.Id, x => x); // Remove network interfaces that no longer exist. + List removeKeys = new List(); foreach (KeyValuePair networkInterfacePair in _networks) { if (foundNetworkInterfaces.ContainsKey(networkInterfacePair.Key)) continue; - - - networkInterfacePair.Value.Close(); - _networks.Remove(networkInterfacePair.Key); + removeKeys.Add(networkInterfacePair.Key); + } + foreach (string key in removeKeys) + { + var network = _networks[key]; + network.Close(); + _networks.Remove(key); } // Add new network interfaces.