From 3c0c9d781607beceffd842f12b8ed9623fefe08b Mon Sep 17 00:00:00 2001 From: Inseob Kim Date: Wed, 28 Feb 2024 14:28:59 +0900 Subject: [PATCH] Sort jarjar rename keys before using To make it deterministic Bug: 327302642 Test: compare build commands among different targets Change-Id: I890dcd67c62db58938a6e6d1c4e3fbd323c72b18 --- java/base.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/java/base.go b/java/base.go index 7f4ea08c7..2b499e2a5 100644 --- a/java/base.go +++ b/java/base.go @@ -2408,7 +2408,8 @@ type JarJarProviderData struct { func (this JarJarProviderData) GetDebugString() string { result := "" - for k, v := range this.Rename { + for _, k := range android.SortedKeys(this.Rename) { + v := this.Rename[k] if strings.Contains(k, "android.companion.virtual.flags.FakeFeatureFlagsImpl") { result += k + "-->" + v + ";" } @@ -2664,7 +2665,8 @@ func (module *Module) collectJarJarRules(ctx android.ModuleContext) *JarJarProvi // to "" won't be in this list because they shouldn't be renamed yet. func getJarJarRuleText(provider *JarJarProviderData) string { result := "" - for orig, renamed := range provider.Rename { + for _, orig := range android.SortedKeys(provider.Rename) { + renamed := provider.Rename[orig] if renamed != "" { result += "rule " + orig + " " + renamed + "\n" }