Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7cce01da authored by Hai Zhang's avatar Hai Zhang
Browse files

Don't drop restricted permission allowlist for system apps.

Because we weren't dropping them upon installing system app upgrades
either.

Bug: 263504888
Test: presubmit
Change-Id: I1d8afd660fe2f336cbb4060a3fa852b8edc6150d
parent 7b55e52e
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -89,7 +89,6 @@ import com.android.server.policy.SoftRestrictedPermissionPolicy
import libcore.util.EmptyArray
import java.io.FileDescriptor
import java.io.PrintWriter
import java.util.Collections
import java.util.concurrent.CompletableFuture
import java.util.concurrent.ExecutionException
import java.util.concurrent.TimeUnit
@@ -1917,10 +1916,14 @@ class PermissionService(
                packageManagerInternal.getPackageStateInternal(androidPackage.packageName)!!
            addAllowlistedRestrictedPermissionsUnchecked(androidPackage, packageState.appId,
                params.allowlistedRestrictedPermissions, userId)
            // Drop UPGRADE_EXEMPT for all permissions requested by this package since there's an
            // installer and the installer has made a decision.
            setAllowlistedRestrictedPermissionsUnchecked(androidPackage, packageState.appId,
                Collections.emptyList(), PackageManager.FLAG_PERMISSION_WHITELIST_UPGRADE, userId)
            if (!packageState.isSystem()) {
                // Drop UPGRADE_EXEMPT for all permissions requested by this package since there's
                // an installer and the installer has made a decision.
                setAllowlistedRestrictedPermissionsUnchecked(
                    androidPackage, packageState.appId, emptyList(),
                    PackageManager.FLAG_PERMISSION_WHITELIST_UPGRADE, userId
                )
            }
            setRequestedPermissionStates(packageState, userId, params.permissionStates)
        }
    }