NetworkDiscovery: emit hostAddressDiscovered only if a new IP has been added to the discovery result #541

pull/542/head
Simon Stürz 2022-07-14 08:12:47 +02:00
parent c5c9703247
commit ae11ec32ea
1 changed files with 3 additions and 1 deletions

View File

@ -105,6 +105,7 @@ void NetworkDeviceDiscoveryReplyImpl::processPingResponse(const QHostAddress &ad
info.setAddress(address); info.setAddress(address);
info.setHostName(hostName); info.setHostName(hostName);
m_pingCache.insert(address, info); m_pingCache.insert(address, info);
// First time seeing this host address
emit hostAddressDiscovered(address); emit hostAddressDiscovered(address);
} }
@ -117,7 +118,6 @@ void NetworkDeviceDiscoveryReplyImpl::processArpResponse(const QNetworkInterface
info.setNetworkInterface(interface); info.setNetworkInterface(interface);
info.setMacAddress(macAddress.toString()); info.setMacAddress(macAddress.toString());
m_networkDeviceCache[macAddress] = info; m_networkDeviceCache[macAddress] = info;
emit hostAddressDiscovered(address);
} else { } else {
if (m_networkDeviceCache.contains(macAddress)) { if (m_networkDeviceCache.contains(macAddress)) {
m_networkDeviceCache[macAddress].setAddress(address); m_networkDeviceCache[macAddress].setAddress(address);
@ -127,6 +127,8 @@ void NetworkDeviceDiscoveryReplyImpl::processArpResponse(const QNetworkInterface
info.setAddress(address); info.setAddress(address);
info.setNetworkInterface(interface); info.setNetworkInterface(interface);
m_networkDeviceCache[macAddress] = info; m_networkDeviceCache[macAddress] = info;
// First time seeing this host address
emit hostAddressDiscovered(address);
} }
} }