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

Commit 34f224b3 authored by Kholoud Mohamed's avatar Kholoud Mohamed Committed by Automerger Merge Worker
Browse files

Merge "Fix bug in policy engine" into udc-dev am: c31805c1 am: 241a273a

parents 08f5bc21 241a273a
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -454,8 +454,8 @@ final class DevicePolicyEngine {
                onGlobalPolicyChanged(policyDefinition, enforcingAdmin);
                onGlobalPolicyChanged(policyDefinition, enforcingAdmin);
            }
            }


            applyGlobalPolicyOnUsersWithLocalPoliciesLocked(
            applyGlobalPolicyOnUsersWithLocalPoliciesLocked(policyDefinition, enforcingAdmin,
                    policyDefinition, enforcingAdmin, /* value= */ null, /* enforcePolicy= */ true);
                    /* value= */ null, /* skipEnforcePolicy= */ false);


            sendPolicyResultToAdmin(
            sendPolicyResultToAdmin(
                    enforcingAdmin,
                    enforcingAdmin,
+3 −10
Original line number Original line Diff line number Diff line
@@ -14916,8 +14916,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
                policy = new LockTaskPolicy(currentPolicy);
                policy = new LockTaskPolicy(currentPolicy);
                policy.setPackages(Set.of(packages));
                policy.setPackages(Set.of(packages));
            }
            }
            if (policy.getPackages().isEmpty()
            if (policy.getPackages().isEmpty()) {
                    && policy.getFlags() == DevicePolicyManager.LOCK_TASK_FEATURE_NONE) {
                mDevicePolicyEngine.removeLocalPolicy(
                mDevicePolicyEngine.removeLocalPolicy(
                        PolicyDefinition.LOCK_TASK,
                        PolicyDefinition.LOCK_TASK,
                        enforcingAdmin,
                        enforcingAdmin,
@@ -20704,7 +20703,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
    private void addUserControlDisabledPackages(CallerIdentity caller,
    private void addUserControlDisabledPackages(CallerIdentity caller,
            EnforcingAdmin enforcingAdmin, Set<String> packages) {
            EnforcingAdmin enforcingAdmin, Set<String> packages) {
        if (isCallerDeviceOwner(caller)) {
        if (isDeviceOwner(caller)) {
            mDevicePolicyEngine.setGlobalPolicy(
            mDevicePolicyEngine.setGlobalPolicy(
                    PolicyDefinition.USER_CONTROLLED_DISABLED_PACKAGES,
                    PolicyDefinition.USER_CONTROLLED_DISABLED_PACKAGES,
                    enforcingAdmin,
                    enforcingAdmin,
@@ -20720,7 +20719,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
    private void removeUserControlDisabledPackages(CallerIdentity caller,
    private void removeUserControlDisabledPackages(CallerIdentity caller,
            EnforcingAdmin enforcingAdmin) {
            EnforcingAdmin enforcingAdmin) {
        if (isCallerDeviceOwner(caller)) {
        if (isDeviceOwner(caller)) {
            mDevicePolicyEngine.removeGlobalPolicy(
            mDevicePolicyEngine.removeGlobalPolicy(
                    PolicyDefinition.USER_CONTROLLED_DISABLED_PACKAGES,
                    PolicyDefinition.USER_CONTROLLED_DISABLED_PACKAGES,
                    enforcingAdmin);
                    enforcingAdmin);
@@ -20732,12 +20731,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        }
        }
    }
    }
    private boolean isCallerDeviceOwner(CallerIdentity caller) {
        synchronized (getLockObject()) {
            return getDeviceOwnerUserIdUncheckedLocked() == caller.getUserId();
        }
    }
    @Override
    @Override
    public List<String> getUserControlDisabledPackages(ComponentName who,
    public List<String> getUserControlDisabledPackages(ComponentName who,
            String callerPackageName) {
            String callerPackageName) {
+1 −1
Original line number Original line Diff line number Diff line
@@ -167,7 +167,7 @@ final class PolicyEnforcerCallbacks {
                            packages == null ? null : packages.stream().toList());
                            packages == null ? null : packages.stream().toList());
            LocalServices.getService(UsageStatsManagerInternal.class)
            LocalServices.getService(UsageStatsManagerInternal.class)
                            .setAdminProtectedPackages(
                            .setAdminProtectedPackages(
                            packages == null ? null : new ArraySet(packages), userId);
                            packages == null ? null : new ArraySet<>(packages), userId);
        });
        });
        return true;
        return true;
    }
    }