From b8a43567449242271a4ac6097d72764c95b946a4 Mon Sep 17 00:00:00 2001 From: James Rich <2199651+jamesarich@users.noreply.github.com> Date: Wed, 10 Sep 2025 15:03:21 -0500 Subject: [PATCH] fix(locale): handle null locale tags and use forLanguageTag (#3065) --- app/src/main/java/com/geeksville/mesh/ui/Main.kt | 2 +- app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/geeksville/mesh/ui/Main.kt b/app/src/main/java/com/geeksville/mesh/ui/Main.kt index 3e8e0f0e8..1b246ed68 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/Main.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/Main.kt @@ -420,7 +420,7 @@ private fun VersionChecks(viewModel: UIViewModel) { LaunchedEffect(connectionState, myNodeInfo) { if (connectionState == ConnectionState.CONNECTED) { myNodeInfo?.let { info -> - val isOld = info.minAppVersion > BuildConfig.VERSION_CODE + val isOld = info.minAppVersion > BuildConfig.VERSION_CODE && BuildConfig.DEBUG.not() if (isOld) { viewModel.showAlert( context.getString(R.string.app_too_old), diff --git a/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt b/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt index 4aeb1af74..bdd9ddb7d 100644 --- a/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt +++ b/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt @@ -57,7 +57,7 @@ object LanguageUtils : Logging { context.resources.getXml(R.xml.locales_config).use { while (it.eventType != XmlPullParser.END_DOCUMENT) { if (it.eventType == XmlPullParser.START_TAG && it.name == "locale") { - languageTags += it.getAttributeValue(0) + it.getAttributeValue(0)?.let { tag -> languageTags += tag } } it.next() } @@ -66,7 +66,7 @@ object LanguageUtils : Logging { errormsg("Error parsing locale_config.xml ${e.message}") } return languageTags.associateBy { tag -> - val loc = Locale(tag) + val loc = Locale.forLanguageTag(tag) when (tag) { SYSTEM_DEFAULT -> context.getString(R.string.preferences_system_default) "fr-HT" -> context.getString(R.string.fr_HT)