From 099da6566727887156066a1da458ff605e4d1120 Mon Sep 17 00:00:00 2001 From: Ivan Chiang Date: Tue, 14 Apr 2020 14:33:31 +0800 Subject: [PATCH] Don't create cache when doing Apex PreRebootVerification When StagingManager uses PackageParser2 to parse the APEX files during pre-reboot verification with the parse flag PackageManager.GET_META_DATA, it creates the caches of them. But, the caches are not used. Pass the "null" instead of mCacheDir to avoid creating the caches. Test: manual Fix: 153618582 Change-Id: I40676082fc98d87ad2ad9fc94d02903afe0243d4 --- .../core/java/com/android/server/pm/PackageManagerService.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 59ac603875e2b..015bb0d8e8c14 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -3576,7 +3576,8 @@ public class PackageManagerService extends IPackageManager.Stub // Prepare a supplier of package parser for the staging manager to parse apex file // during the staging installation. final Supplier apexParserSupplier = () -> new PackageParser2( - mSeparateProcesses, mOnlyCore, mMetrics, mCacheDir, mPackageParserCallback); + mSeparateProcesses, mOnlyCore, mMetrics, null /* cacheDir */, + mPackageParserCallback); mInstallerService = new PackageInstallerService(mContext, this, apexParserSupplier); final Pair instantAppResolverComponent = getInstantAppResolverLPr();