diff --git a/app/src/main/kotlin/org/fdroid/install/SessionInstallManager.kt b/app/src/main/kotlin/org/fdroid/install/SessionInstallManager.kt index 6b9518c9c..8b829b0ba 100644 --- a/app/src/main/kotlin/org/fdroid/install/SessionInstallManager.kt +++ b/app/src/main/kotlin/org/fdroid/install/SessionInstallManager.kt @@ -150,12 +150,13 @@ class SessionInstallManager @Inject constructor( context.unregisterReceiver(this) } } - else -> { // some error, can't help it now, continue - if (status == PackageInstaller.STATUS_FAILURE_ABORTED) { - cont.resume(PreApprovalResult.UserAborted) - } else { - cont.resume(PreApprovalResult.Error(msg)) + else -> { + val result = when (status) { + PackageInstaller.STATUS_FAILURE_ABORTED -> PreApprovalResult.UserAborted + PackageInstaller.STATUS_FAILURE_BLOCKED -> PreApprovalResult.NotSupported + else -> PreApprovalResult.Error(msg) } + cont.resume(result) context.unregisterReceiver(this) } }