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

Commit 044600c7 authored by Oli Lan's avatar Oli Lan Committed by Automerger Merge Worker
Browse files

Merge "Prevent non-admin users from deleting system apps." into rvc-dev am:...

Merge "Prevent non-admin users from deleting system apps." into rvc-dev am: 71fad59e am: 476be4be am: 916d292b am: fee26edc

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19570390



Change-Id: I4ccd3835f580a9b313509737d2ff755892e9bb81
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents fc8fd15e fee26edc
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -21657,6 +21657,17 @@ public class PackageManagerService extends IPackageManager.Stub
                return PackageManager.DELETE_FAILED_INTERNAL_ERROR;
            }
            if (isSystemApp(uninstalledPs)
                    && (deleteFlags & PackageManager.DELETE_SYSTEM_APP) == 0) {
                UserInfo userInfo = mUserManager.getUserInfo(userId);
                if (userInfo == null || !userInfo.isAdmin()) {
                    Slog.w(TAG, "Not removing package " + packageName
                            + " as only admin user may downgrade system apps");
                    EventLog.writeEvent(0x534e4554, "170646036", -1, packageName);
                    return PackageManager.DELETE_FAILED_USER_RESTRICTED;
                }
            }
            disabledSystemPs = mSettings.getDisabledSystemPkgLPr(packageName);
            // Static shared libs can be declared by any package, so let us not
            // allow removing a package if it provides a lib others depend on.