summaryrefslogtreecommitdiffstats
path: root/src/networksettings/connman/qnetworksettingsmanager_p.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/networksettings/connman/qnetworksettingsmanager_p.cpp')
-rw-r--r--src/networksettings/connman/qnetworksettingsmanager_p.cpp32
1 files changed, 21 insertions, 11 deletions
diff --git a/src/networksettings/connman/qnetworksettingsmanager_p.cpp b/src/networksettings/connman/qnetworksettingsmanager_p.cpp
index bc92f97..94eec14 100644
--- a/src/networksettings/connman/qnetworksettingsmanager_p.cpp
+++ b/src/networksettings/connman/qnetworksettingsmanager_p.cpp
@@ -180,7 +180,7 @@ void QNetworkSettingsManagerPrivate::onTechnologyAdded(const QDBusObjectPath &te
{
Q_Q(QNetworkSettingsManager);
- foreach (QNetworkSettingsInterface* item, m_interfaceModel.getModel()) {
+ for (QNetworkSettingsInterface* item : m_interfaceModel.getModel()) {
ConnmanSettingsInterface* interface = qobject_cast<ConnmanSettingsInterface*>(item);
if (interface->path() == technology.path()) {
return; // we already know the interface/technology
@@ -204,7 +204,7 @@ void QNetworkSettingsManagerPrivate::onTechnologyRemoved(const QDBusObjectPath &
{
Q_Q(QNetworkSettingsManager);
- foreach (QNetworkSettingsInterface* item, m_interfaceModel.getModel()) {
+ for (QNetworkSettingsInterface* item : m_interfaceModel.getModel()) {
ConnmanSettingsInterface* tech = qobject_cast<ConnmanSettingsInterface*>(item);
if (tech->path() == technology.path()) {
m_interfaceModel.removeInterface(tech->name());
@@ -221,7 +221,7 @@ void QNetworkSettingsManagerPrivate::getServicesFinished(QDBusPendingCallWatcher
if (reply.isError())
return;
- foreach (const ConnmanMapStruct &object, reply.value()) {
+ for (const ConnmanMapStruct &object : reply.value()) {
const QString servicePath = object.objectPath.path();
handleNewService(servicePath);
}
@@ -236,7 +236,7 @@ void QNetworkSettingsManagerPrivate::getTechnologiesFinished(QDBusPendingCallWat
if (reply.isError())
return;
- foreach (const ConnmanMapStruct &object, reply.value()) {
+ for (const ConnmanMapStruct &object : reply.value()) {
ConnmanSettingsInterface *item = new ConnmanSettingsInterface(object.objectPath.path(), object.propertyMap, this);
item->scanServices();
@@ -253,30 +253,40 @@ void QNetworkSettingsManagerPrivate::getTechnologiesFinished(QDBusPendingCallWat
void QNetworkSettingsManagerPrivate::onServicesChanged(ConnmanMapStructList changed, const QList<QDBusObjectPath> &removed)
{
Q_Q(QNetworkSettingsManager);
- foreach (const QDBusObjectPath &dpath, removed) {
+ for (const QDBusObjectPath &dpath : removed) {
QString path = dpath.path();
if (m_serviceModel->removeService(path))
emit q->servicesChanged();
if (auto service = m_unnamedServices.take(path))
- if (!service->placeholderState())
+ if (!service->placeholderState()) {
+ disconnect(service, &QNetworkSettingsService::nameChanged,
+ this, &QNetworkSettingsManagerPrivate::serviceReady);
+ disconnect(service, &QNetworkSettingsService::typeChanged,
+ this, &QNetworkSettingsManagerPrivate::serviceReady);
service->deleteLater();
+ }
if (auto service = m_unknownServices.take(path))
- if (!service->placeholderState())
+ if (!service->placeholderState()) {
+ disconnect(service, &QNetworkSettingsService::nameChanged,
+ this, &QNetworkSettingsManagerPrivate::serviceReady);
+ disconnect(service, &QNetworkSettingsService::typeChanged,
+ this, &QNetworkSettingsManagerPrivate::serviceReady);
service->deleteLater();
+ }
m_unnamedServicesForSsidConnection.remove(path); // do not delete here
}
QStringList newServices;
- foreach (const ConnmanMapStruct &map, changed) {
+ for (const ConnmanMapStruct &map : changed) {
QString path = map.objectPath.path();
if (m_unknownServices.contains(path) || m_unnamedServices.contains(path))
continue;
bool found = false;
- foreach (QNetworkSettingsService* service, m_serviceModel->getModel()) {
+ for (QNetworkSettingsService* service : m_serviceModel->getModel()) {
if (service->id() == path && service->placeholderState() == false) {
found = true;
break;
@@ -286,7 +296,7 @@ void QNetworkSettingsManagerPrivate::onServicesChanged(ConnmanMapStructList chan
newServices.append(map.objectPath.path());
}
- foreach (QString newService, newServices) {
+ for (QString newService : newServices) {
handleNewService(newService);
}
@@ -360,7 +370,7 @@ void QNetworkSettingsManagerPrivate::serviceReady()
}
//Update the interface state accordingly
- foreach (QNetworkSettingsInterface* item, m_interfaceModel.getModel()) {
+ for (QNetworkSettingsInterface* item : m_interfaceModel.getModel()) {
ConnmanSettingsInterface* technology = qobject_cast<ConnmanSettingsInterface*>(item);
if (technology->name() == service->name() && technology->type() == service->type()) {
technology->setState(technology->state());