Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0270cfb7 authored by Jeff Sharkey's avatar Jeff Sharkey Committed by Android (Google) Code Review
Browse files

Merge "Explicitly collect manifest digests."

parents 8bf102b1 032f2b24
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2892,6 +2892,7 @@ public abstract class PackageManager {
            PackageParser.Package pkg = parser.parseMonolithicPackage(apkFile, 0);
            if ((flags & GET_SIGNATURES) != 0) {
                parser.collectCertificates(pkg, 0);
                parser.collectManifestDigest(pkg);
            }
            PackageUserState state = new PackageUserState();
            return PackageParser.generatePackageInfo(pkg, null, flags, 0, 0, null, state);
+2 −0
Original line number Diff line number Diff line
@@ -744,6 +744,8 @@ public class PackageParser {
     * {@code AndroidManifest.xml}, {@code true} is returned.
     */
    public void collectManifestDigest(Package pkg) throws PackageParserException {
        pkg.manifestDigest = null;

        // TODO: extend to gather digest for split APKs
        try {
            final StrictJarFile jarFile = new StrictJarFile(pkg.codePath);
+2 −0
Original line number Diff line number Diff line
@@ -4229,6 +4229,7 @@ public class PackageManagerService extends IPackageManager.Stub {
        try {
            pp.collectCertificates(pkg, parseFlags);
            pp.collectManifestDigest(pkg);
        } catch (PackageParserException e) {
            mLastScanError = e.error;
            return false;
@@ -10272,6 +10273,7 @@ public class PackageManagerService extends IPackageManager.Stub {
        try {
            pp.collectCertificates(pkg, parseFlags);
            pp.collectManifestDigest(pkg);
        } catch (PackageParserException e) {
            res.returnCode = e.error;
            return;