diff options
Diffstat (limited to 'PermissionController/src/com/android/permissioncontroller/permission/data/HibernationSettingStateLiveData.kt')
-rw-r--r-- | PermissionController/src/com/android/permissioncontroller/permission/data/HibernationSettingStateLiveData.kt | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/data/HibernationSettingStateLiveData.kt b/PermissionController/src/com/android/permissioncontroller/permission/data/HibernationSettingStateLiveData.kt index 606562641..f764988c7 100644 --- a/PermissionController/src/com/android/permissioncontroller/permission/data/HibernationSettingStateLiveData.kt +++ b/PermissionController/src/com/android/permissioncontroller/permission/data/HibernationSettingStateLiveData.kt @@ -34,6 +34,7 @@ import com.android.permissioncontroller.hibernation.isPackageHibernationExemptBy import com.android.permissioncontroller.hibernation.isPackageHibernationExemptByUser import com.android.permissioncontroller.permission.data.PackagePermissionsLiveData.Companion.NON_RUNTIME_NORMAL_PERMS import com.android.permissioncontroller.permission.model.livedatatypes.HibernationSettingState +import com.android.permissioncontroller.permission.service.AUTO_REVOKE_EXEMPT_PERMISSIONS import kotlinx.coroutines.Job /** @@ -117,7 +118,10 @@ class HibernationSettingStateLiveData private constructor( permState.permFlags and (FLAG_PERMISSION_GRANTED_BY_DEFAULT or FLAG_PERMISSION_GRANTED_BY_ROLE) != 0 } ?: false - if (!default) { + val allExempt = liveData.value?.all { (permName, _) -> + permName in AUTO_REVOKE_EXEMPT_PERMISSIONS + } ?: false + if (!default && !allExempt) { revocableGroups.add(groupName) } } |