From aea66f750b37f57f1c5ce57f03c4012d2e060eee Mon Sep 17 00:00:00 2001 From: Dave Mankoff Date: Tue, 15 Nov 2022 21:40:05 +0000 Subject: [PATCH] Fix flag app being empty. Kotlin evaluates `object` declarations lazily. We have to access `Flags` before it will populate the list, and we were asking for the list during construction of our dagger graph. Bug: 257302229 Test: manual Change-Id: Iadfbbbc50ee2fb09260f5d119898fb50b3cc90f9 --- .../src-debug/com/android/systemui/flags/FlagsFactory.kt | 6 +++++- .../src-release/com/android/systemui/flags/FlagsFactory.kt | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src-debug/com/android/systemui/flags/FlagsFactory.kt b/packages/SystemUI/src-debug/com/android/systemui/flags/FlagsFactory.kt index 74519c21820b8..05372fec7211d 100644 --- a/packages/SystemUI/src-debug/com/android/systemui/flags/FlagsFactory.kt +++ b/packages/SystemUI/src-debug/com/android/systemui/flags/FlagsFactory.kt @@ -22,7 +22,11 @@ object FlagsFactory { private val flagMap = mutableMapOf>() val knownFlags: Map> - get() = flagMap + get() { + // We need to access Flags in order to initialize our map. + assert(flagMap.contains(Flags.TEAMFOOD.name)) { "Where is teamfood?" } + return flagMap + } fun unreleasedFlag( id: Int, diff --git a/packages/SystemUI/src-release/com/android/systemui/flags/FlagsFactory.kt b/packages/SystemUI/src-release/com/android/systemui/flags/FlagsFactory.kt index 89c0786af6e34..27c5699df70fa 100644 --- a/packages/SystemUI/src-release/com/android/systemui/flags/FlagsFactory.kt +++ b/packages/SystemUI/src-release/com/android/systemui/flags/FlagsFactory.kt @@ -22,7 +22,11 @@ object FlagsFactory { private val flagMap = mutableMapOf>() val knownFlags: Map> - get() = flagMap + get() { + // We need to access Flags in order to initialize our map. + assert(flagMap.contains(Flags.TEAMFOOD.name)) { "Where is teamfood?" } + return flagMap + } fun unreleasedFlag( id: Int,