Use the full dexpreopt boot classpath when preopting with other images.

Bug: 119800099
Test: m
Change-Id: Ia9b34aa92ebb1b4de96ea0f8f290d798be19b2cf
This commit is contained in:
Nicolas Geoffray
2019-04-08 17:19:15 +01:00
parent 04b99cbf6d
commit 06758a7e13

View File

@@ -98,6 +98,7 @@ func (d *dexpreopter) dexpreopt(ctx android.ModuleContext, dexJarFile android.Mo
global := dexpreoptGlobalConfig(ctx) global := dexpreoptGlobalConfig(ctx)
bootImage := defaultBootImageConfig(ctx) bootImage := defaultBootImageConfig(ctx)
defaultBootImage := bootImage
if global.UseApexImage { if global.UseApexImage {
bootImage = apexBootImageConfig(ctx) bootImage = apexBootImageConfig(ctx)
} }
@@ -165,8 +166,11 @@ func (d *dexpreopter) dexpreopt(ctx android.ModuleContext, dexJarFile android.Mo
Archs: archs, Archs: archs,
DexPreoptImages: images, DexPreoptImages: images,
PreoptBootClassPathDexFiles: bootImage.dexPaths.Paths(), // We use the dex paths and dex locations of the default boot image, as it
PreoptBootClassPathDexLocations: bootImage.dexLocations, // contains the full dexpreopt boot classpath. Other images may just contain a subset of
// the dexpreopt boot classpath.
PreoptBootClassPathDexFiles: defaultBootImage.dexPaths.Paths(),
PreoptBootClassPathDexLocations: defaultBootImage.dexLocations,
PreoptExtractedApk: false, PreoptExtractedApk: false,