From 92e0459c04e59032c53791af7efdbffff65c4f72 Mon Sep 17 00:00:00 2001 From: Jackal Guo Date: Tue, 30 Mar 2021 17:08:08 +0800 Subject: [PATCH] Get visibility allow list before uninstalling package The package removed broadcast should be only sent to the packages in visibility allow list. However, current broadcast allow list is null when uninstalling. This indicates that every package could receive this broadcast. Fix: 184010320 Test: atest PackageManagerTests AppsFilterTest AppEnumerationTests Change-Id: I140bfa093dcc82980f671c60c973882546eaf899 --- .../core/java/com/android/server/pm/PackageManagerService.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 550e9f84909c4..6a72b1cef9a87 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -21463,6 +21463,8 @@ public class PackageManagerService extends IPackageManager.Stub synchronized (mLock) { if (outInfo != null) { outInfo.uid = ps.appId; + outInfo.broadcastAllowList = mAppsFilter.getVisibilityAllowList(ps, + allUserHandles, mSettings.getPackagesLocked()); } }