From 7df7bc13f1b483504b01685888d3e3b6b6224a87 Mon Sep 17 00:00:00 2001 From: Oliver Wolff Date: Mon, 24 Jun 2019 12:52:38 +0200 Subject: winrt: Do not assert if requesting access failed On Windows 8.1 accessing geolocation statics fails. If this happens, the function should not assert/crash, but just return false. Fixes: QTBUG-76344 Change-Id: I2dbd4734512f731ef065ec1e1e210fc22e057547 Reviewed-by: Alex Blasche --- src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp b/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp index 821d2e9f..1c448bc2 100644 --- a/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp +++ b/src/plugins/position/winrt/qgeopositioninfosource_winrt.cpp @@ -655,7 +655,10 @@ bool QGeoPositionInfoSourceWinRT::requestAccess() const hr = statics->RequestAccessAsync(&op); return hr; }); - Q_ASSERT_SUCCEEDED(hr); + if (FAILED(hr)) { + qCDebug(lcPositioningWinRT) << __FUNCTION__ << "Requesting access from Xaml thread failed"; + return false; + } // We cannot wait inside the XamlThread as that would deadlock #ifdef Q_OS_WINRT -- cgit v1.2.1