From 0cf8cc66ecca83c7e24d3e55268283de71272f50 Mon Sep 17 00:00:00 2001 From: Calin Juravle Date: Wed, 3 Feb 2016 19:05:18 +0000 Subject: [PATCH] Fix useProfiles usage in PackageDexOptimizer When useProfiles is set we should always try to recompile. Change-Id: Ide2aaf1cfbe7ccad28f653e544b5d04457dc14a9 --- .../com/android/server/pm/PackageDexOptimizer.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/pm/PackageDexOptimizer.java b/services/core/java/com/android/server/pm/PackageDexOptimizer.java index 64af21313a1d3..a3af561bf44f8 100644 --- a/services/core/java/com/android/server/pm/PackageDexOptimizer.java +++ b/services/core/java/com/android/server/pm/PackageDexOptimizer.java @@ -176,8 +176,14 @@ class PackageDexOptimizer { dexoptNeeded = adjustDexoptNeeded(dexoptNeeded); if (dexoptNeeded == DexFile.NO_DEXOPT_NEEDED) { - // No dexopt needed and we don't use profiles. Nothing to do. - continue; + if (useProfiles) { + // Profiles may trigger re-compilation. The final decision is taken in + // installd. + dexoptNeeded = DexFile.DEX2OAT_NEEDED; + } else { + // No dexopt needed and we don't use profiles. Nothing to do. + continue; + } } final String dexoptType; String oatDir = null;