From ed271fcf349941eebbd671a26bac4108eb07d721 Mon Sep 17 00:00:00 2001 From: Alex Light Date: Mon, 22 Mar 2021 17:43:17 -0700 Subject: [PATCH] Don't try to report non-existent stats During OTAPreopt we don't have compilation stats due to the way we compile things. Don't attempt to report stats in this case since it will cause an NPE. Test: manual OTA on a blueline Bug: 181182967 Bug: 177694884 Change-Id: Ie2eb4d7e2ab562d4436a605bcbdd2ea17517dfc3 --- .../core/java/com/android/server/pm/PackageDexOptimizer.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/pm/PackageDexOptimizer.java b/services/core/java/com/android/server/pm/PackageDexOptimizer.java index 7aaab0c4d40bc..e0a39f3130121 100644 --- a/services/core/java/com/android/server/pm/PackageDexOptimizer.java +++ b/services/core/java/com/android/server/pm/PackageDexOptimizer.java @@ -260,7 +260,8 @@ public class PackageDexOptimizer { // Only report metrics for base apk for now. // TODO: add ISA and APK type to metrics. - if (pkg.getBaseApkPath().equals(path)) { + // OTAPreopt doesn't have stats so don't report in that case. + if (pkg.getBaseApkPath().equals(path) && packageStats != null) { Trace.traceBegin(Trace.TRACE_TAG_PACKAGE_MANAGER, "dex2oat-metrics"); try { long sessionId = Math.randomLongInternal();