diff options
author | gang.huang <gang.huang@unisoc.com> | 2024-03-22 09:48:57 +0800 |
---|---|---|
committer | gang huang <gang.huang@unisoc.com> | 2024-03-28 00:56:57 +0000 |
commit | 01294038ddbf3b54f9c1e1e9b634bd2680a2b023 (patch) | |
tree | 8175c5b3eaf1d874d9e158808f95bf19ea4972ae | |
parent | 356e0e163a2a9f59288ae7b225ebe91addb33111 (diff) | |
download | base-01294038ddbf3b54f9c1e1e9b634bd2680a2b023.tar.gz |
Avoid collectting certificates repeatedly in method ParsingPackageUtils.parseMonolithicPackage
Pass liteParseFlags without PARSE_COLLECT_CERTIFICATES flag when parsing APK
Bug: 330773072
Test: Build
Change-Id: I34eec72cbb471c4fc3fb61908952bea63b80ef43
-rw-r--r-- | core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java b/core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java index dbe4fba5dfdb..9fc7ddb57847 100644 --- a/core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java +++ b/core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java @@ -415,8 +415,10 @@ public class ParsingPackageUtils { */ private ParseResult<ParsingPackage> parseMonolithicPackage(ParseInput input, File apkFile, int flags) { + // The signature parsing will be done later in method parseBaseApk. + int liteParseFlags = flags & ~PARSE_COLLECT_CERTIFICATES; final ParseResult<PackageLite> liteResult = - ApkLiteParseUtils.parseMonolithicPackageLite(input, apkFile, flags); + ApkLiteParseUtils.parseMonolithicPackageLite(input, apkFile, liteParseFlags); if (liteResult.isError()) { return input.error(liteResult); } |