diff options
Diffstat (limited to 'src/corelib/platform/android/qandroidextras.cpp')
-rw-r--r-- | src/corelib/platform/android/qandroidextras.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/corelib/platform/android/qandroidextras.cpp b/src/corelib/platform/android/qandroidextras.cpp index d9bcc76a1a..155f88b921 100644 --- a/src/corelib/platform/android/qandroidextras.cpp +++ b/src/corelib/platform/android/qandroidextras.cpp @@ -1230,7 +1230,7 @@ QtAndroidPrivate::requestPermission(QtAndroidPrivate::PermissionType permission) promise->start(); const auto nativePermissions = nativeStringsFromPermission(permission); - if (nativePermissions.size() > 0) { + if (nativePermissions.size() > 0 && QtAndroidPrivate::acquireAndroidDeadlockProtector()) { requestPermissionsInternal(nativePermissions).then( [promise, permission](QFuture<QtAndroidPrivate::PermissionResult> future) { auto AuthorizedCount = future.results().count(QtAndroidPrivate::Authorized); @@ -1242,6 +1242,7 @@ QtAndroidPrivate::requestPermission(QtAndroidPrivate::PermissionType permission) } else { promise->addResult(QtAndroidPrivate::Denied, 0); } + QtAndroidPrivate::releaseAndroidDeadlockProtector(); promise->finish(); }); |