summaryrefslogtreecommitdiffstats
path: root/src/plugins/networkinformation
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/networkinformation')
-rw-r--r--src/plugins/networkinformation/networkmanager/qnetworkmanagerservice.cpp22
1 files changed, 10 insertions, 12 deletions
diff --git a/src/plugins/networkinformation/networkmanager/qnetworkmanagerservice.cpp b/src/plugins/networkinformation/networkmanager/qnetworkmanagerservice.cpp
index 764507fd4b..5d10de792d 100644
--- a/src/plugins/networkinformation/networkmanager/qnetworkmanagerservice.cpp
+++ b/src/plugins/networkinformation/networkmanager/qnetworkmanagerservice.cpp
@@ -115,26 +115,24 @@ QNetworkManagerInterface::NMConnectivityState QNetworkManagerInterface::connecti
void QNetworkManagerInterface::setProperties(const QMap<QString, QVariant> &map)
{
for (auto i = map.cbegin(), end = map.cend(); i != end; ++i) {
- const bool isState = i.key() == QLatin1String("State");
- const bool isConnectivity = i.key() == QLatin1String("Connectivity");
- bool stateUpdate = isState;
- bool connectivityUpdate = isConnectivity;
+ bool valueChanged = true;
auto it = propertyMap.lowerBound(i.key());
if (it != propertyMap.end() && it.key() == i.key()) {
- stateUpdate &= (it.value() != i.value());
- connectivityUpdate &= (it.value() != i.value());
+ valueChanged = (it.value() != i.value());
*it = *i;
} else {
propertyMap.insert(it, i.key(), i.value());
}
- if (stateUpdate) {
- quint32 state = i.value().toUInt();
- Q_EMIT stateChanged(static_cast<NMState>(state));
- } else if (connectivityUpdate) {
- quint32 state = i.value().toUInt();
- Q_EMIT connectivityChanged(static_cast<NMConnectivityState>(state));
+ if (valueChanged) {
+ if (i.key() == QLatin1String("State")) {
+ quint32 state = i.value().toUInt();
+ Q_EMIT stateChanged(static_cast<NMState>(state));
+ } else if (i.key() == QLatin1String("Connectivity")) {
+ quint32 state = i.value().toUInt();
+ Q_EMIT connectivityChanged(static_cast<NMConnectivityState>(state));
+ }
}
}
}