From 7ddf834b864c4df0b08ec904d792993c09ba22b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5rten=20Nordheim?= Date: Tue, 13 Apr 2021 15:47:09 +0200 Subject: [PATCH 1/2] QNetworkInformation(Win): cleanup dtor I don't like how it looks, so make stop() work even if it's not monitoring so that the dtor can call it unconditionally, and without needing a CoUninitialize call of its own. Change-Id: I06832d7e1d34317ff49ea2c425c79588719d7cd0 Reviewed-by: Volker Hilsheimer --- ...orklistmanagernetworkinformationbackend.cpp | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/plugins/networkinformationbackends/networklistmanager/qnetworklistmanagernetworkinformationbackend.cpp b/src/plugins/networkinformationbackends/networklistmanager/qnetworklistmanagernetworkinformationbackend.cpp index 207c82efd96..c6b0a6e79bd 100644 --- a/src/plugins/networkinformationbackends/networklistmanager/qnetworklistmanagernetworkinformationbackend.cpp +++ b/src/plugins/networkinformationbackends/networklistmanager/qnetworklistmanagernetworkinformationbackend.cpp @@ -305,10 +305,7 @@ QNetworkListManagerNetworkInformationBackend::~QNetworkListManagerNetworkInforma { if (comInitFailed) return; - if (monitoring) - stop(); - else - CoUninitialize(); + stop(); } void QNetworkListManagerNetworkInformationBackend::setConnectivity(NLM_CONNECTIVITY newConnectivity) @@ -354,12 +351,13 @@ bool QNetworkListManagerNetworkInformationBackend::start() void QNetworkListManagerNetworkInformationBackend::stop() { - Q_ASSERT(managerEvents); - Q_ASSERT(monitoring); - // Can return false but realistically shouldn't since that would break everything: - managerEvents->stop(); - monitoring = false; - managerEvents.Reset(); + if (monitoring) { + Q_ASSERT(managerEvents); + // Can return false but realistically shouldn't since that would break everything: + managerEvents->stop(); + monitoring = false; + managerEvents.Reset(); + } CoUninitialize(); comInitFailed = true; // we check this value in start() to see if we need to re-initialize From ec3e90a9e43221b12bc00a1ceaa7ca26e6be5b59 Mon Sep 17 00:00:00 2001 From: Juha Vuolle Date: Wed, 14 Apr 2021 11:04:12 +0300 Subject: [PATCH 2/2] Add CoreMotion to the list of looked-up frameworks (Mac/iOS) The CoreMotion is required by the QtSensor module. Task-number: QTBUG-92502 Change-Id: I7f1853131aa96b2cb052862d5bf492df5ec18150 Reviewed-by: Alexandru Croitor --- cmake/QtFrameworkHelpers.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/QtFrameworkHelpers.cmake b/cmake/QtFrameworkHelpers.cmake index 9e350c858de..6289ce98b14 100644 --- a/cmake/QtFrameworkHelpers.cmake +++ b/cmake/QtFrameworkHelpers.cmake @@ -23,7 +23,7 @@ macro(qt_find_apple_system_frameworks) qt_internal_find_apple_system_framework(FWSystemConfiguration SystemConfiguration) qt_internal_find_apple_system_framework(FWUIKit UIKit) qt_internal_find_apple_system_framework(FWCoreLocation CoreLocation) - + qt_internal_find_apple_system_framework(FWCoreMotion CoreMotion) qt_internal_find_apple_system_framework(FWWatchKit WatchKit) qt_internal_find_apple_system_framework(FWGameController GameController) endif()