From 271e922bb0dd8a5c9cf47d0bc66647e50c8b6d4a Mon Sep 17 00:00:00 2001 From: JW Wang Date: Mon, 10 Aug 2020 10:46:18 +0800 Subject: Reject a multi-sessin set as APEX (1/n) Prevent the crash loop in b/163288861#comment1. It doesn't make sense to set a multi-session to APEX at all. We should check and reject this case. Bug: 163288861 Test: N/A, will be added in next CL Change-Id: I23147837a11733b776b1147797b545b539c6c05a --- services/core/java/com/android/server/pm/PackageInstallerService.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/services/core/java/com/android/server/pm/PackageInstallerService.java b/services/core/java/com/android/server/pm/PackageInstallerService.java index 840645edcb82..8af74631fb2e 100644 --- a/services/core/java/com/android/server/pm/PackageInstallerService.java +++ b/services/core/java/com/android/server/pm/PackageInstallerService.java @@ -613,6 +613,9 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements throw new IllegalArgumentException( "APEX files can only be installed as part of a staged session."); } + if (params.isMultiPackage) { + throw new IllegalArgumentException("A multi-session can't be set as APEX."); + } } if (params.isStaged && !isCalledBySystemOrShell(callingUid)) { -- cgit v1.2.3-59-g8ed1b