diff options
author | 2024-11-05 15:31:55 +0000 | |
---|---|---|
committer | 2024-11-06 00:33:21 +0000 | |
commit | d90eed6d02fac83d2f6f5880a955d26e7e4c74d9 (patch) | |
tree | 3def6e12b403e1530c0195f45e7d2d4df158ccc3 | |
parent | 30da55cee8f51648cba737fcd07eef34fece5f49 (diff) |
Ignore `setSplitName` in `BatchDexoptStartCallback`.
This change globally ignores `setSplitName` in
`BatchDexoptStartCallback`, for all batch dexopt reasons. This is
because `setSplitName` only makes sense for a single package.
Bug: 356996742
Bug: 369233230
Test: Presubmit
Change-Id: I172951e41dbb4bdddabc3f18a574dc53c7882551
-rw-r--r-- | libartservice/service/java/com/android/server/art/ArtManagerLocal.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/libartservice/service/java/com/android/server/art/ArtManagerLocal.java b/libartservice/service/java/com/android/server/art/ArtManagerLocal.java index 9442037890..a23435041f 100644 --- a/libartservice/service/java/com/android/server/art/ArtManagerLocal.java +++ b/libartservice/service/java/com/android/server/art/ArtManagerLocal.java @@ -484,7 +484,14 @@ public final class ArtManagerLocal { }); } BatchDexoptParams params = builder.build(); - Utils.check(params.getDexoptParams().getReason().equals(reason)); + DexoptParams dexoptParams = params.getDexoptParams(); + Utils.check(dexoptParams.getReason().equals(reason)); + if (dexoptParams.getSplitName() != null) { + AsLog.w("`setSplitName` is not supported in `BatchDexoptStartCallback`. The value is " + + "ignored"); + params = builder.setDexoptParams(dexoptParams.toBuilder().setSplitName(null).build()) + .build(); + } ExecutorService dexoptExecutor = Executors.newFixedThreadPool(ReasonMapping.getConcurrencyForReason(reason)); |