From 466ddb56b4a51550d2126705bd48c55d56e58c4a Mon Sep 17 00:00:00 2001 From: Patrick Baumann Date: Thu, 11 Apr 2019 12:43:05 -0700 Subject: [PATCH] Protects against a null statusReceiver in uninstall This change protects against the caller passing null for the statusReceiver when uninstalling. Bug: 129859594 Test: atest AtomicInstallTest Change-Id: Iffe89151b830ff85492ab09d2a80a101cbd17a66 --- .../com/android/server/pm/PackageInstallerService.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/pm/PackageInstallerService.java b/services/core/java/com/android/server/pm/PackageInstallerService.java index 7f48970b445a4..e6313d9dcbe45 100644 --- a/services/core/java/com/android/server/pm/PackageInstallerService.java +++ b/services/core/java/com/android/server/pm/PackageInstallerService.java @@ -813,7 +813,7 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements @Override public void uninstall(VersionedPackage versionedPackage, String callerPackageName, int flags, - IntentSender statusReceiver, int userId) throws RemoteException { + IntentSender statusReceiver, int userId) { final int callingUid = Binder.getCallingUid(); mPermissionManager.enforceCrossUserPermission(callingUid, userId, true, true, "uninstall"); if ((callingUid != Process.SHELL_UID) && (callingUid != Process.ROOT_UID)) { @@ -952,6 +952,9 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements @Override public void onUserActionRequired(Intent intent) { + if (mTarget == null) { + return; + } final Intent fillIn = new Intent(); fillIn.putExtra(PackageInstaller.EXTRA_PACKAGE_NAME, mPackageName); fillIn.putExtra(PackageInstaller.EXTRA_STATUS, @@ -972,6 +975,9 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements SystemMessage.NOTE_PACKAGE_STATE, mNotification); } + if (mTarget == null) { + return; + } final Intent fillIn = new Intent(); fillIn.putExtra(PackageInstaller.EXTRA_PACKAGE_NAME, mPackageName); fillIn.putExtra(PackageInstaller.EXTRA_STATUS,