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

Commit 3b22bd69 authored by Joe Castro's avatar Joe Castro Committed by Automerger Merge Worker
Browse files

Merge "Don't remove permission when cleaning up orphaned tree on uninstall"...

Merge "Don't remove permission when cleaning up orphaned tree on uninstall" into tm-qpr-dev am: f0f951f7

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



Change-Id: Ibc95a20be54fe57125618c2b98a6078097971c04
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents c9935674 f0f951f7
Loading
Loading
Loading
Loading
+0 −21
Original line number Diff line number Diff line
@@ -4215,7 +4215,6 @@ public class PermissionManagerServiceImpl implements PermissionManagerServiceInt
        }
        boolean changed = false;

        Set<Permission> needsUpdate = null;
        synchronized (mLock) {
            final Iterator<Permission> it = mRegistry.getPermissionTrees().iterator();
            while (it.hasNext()) {
@@ -4234,26 +4233,6 @@ public class PermissionManagerServiceImpl implements PermissionManagerServiceInt
                            + " that used to be declared by " + bp.getPackageName());
                    it.remove();
                }
                if (needsUpdate == null) {
                    needsUpdate = new ArraySet<>();
                }
                needsUpdate.add(bp);
            }
        }
        if (needsUpdate != null) {
            for (final Permission bp : needsUpdate) {
                final AndroidPackage sourcePkg =
                        mPackageManagerInt.getPackage(bp.getPackageName());
                final PackageStateInternal sourcePs =
                        mPackageManagerInt.getPackageStateInternal(bp.getPackageName());
                synchronized (mLock) {
                    if (sourcePkg != null && sourcePs != null) {
                        continue;
                    }
                    Slog.w(TAG, "Removing dangling permission tree: " + bp.getName()
                            + " from package " + bp.getPackageName());
                    mRegistry.removePermission(bp.getName());
                }
            }
        }
        return changed;