From ec07cdc91e945cae56932049744799e9a6034843 Mon Sep 17 00:00:00 2001 From: Lorn Potter Date: Thu, 24 Oct 2013 13:12:54 +0200 Subject: [PATCH] On configuration removal, take it away from foundConfigurations Prevents derefence of freed QNetworkConfigurationPrivate pointer in QConnmanEngine::getConfigurations(). original submitter: Jakub Adam Change-Id: Ib915c5a68aeb3196c6ac91c96338ebee9dad30b6 Reviewed-by: Robin Burchell --- src/plugins/bearer/connman/qconnmanengine.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/plugins/bearer/connman/qconnmanengine.cpp b/src/plugins/bearer/connman/qconnmanengine.cpp index 24751b509f..6ea34b17f5 100644 --- a/src/plugins/bearer/connman/qconnmanengine.cpp +++ b/src/plugins/bearer/connman/qconnmanengine.cpp @@ -495,6 +495,7 @@ void QConnmanEngine::removeConfiguration(const QString &id) serviceNetworks.removeOne(service); QNetworkConfigurationPrivatePointer ptr = accessPointConfigurations.take(id); + foundConfigurations.removeOne(ptr.data()); locker.unlock(); emit configurationRemoved(ptr); locker.relock();