fix: guard against stale geocoding results on legacy devices

- Add isActive check after blocking Geocoder.getFromLocation call
- Prevent stale results from overwriting state after job cancellation
This commit is contained in:
callebtc
2026-01-15 10:58:38 +07:00
parent 77f97310b5
commit 4810a23b11
@@ -592,6 +592,8 @@ class LocationChannelManager private constructor(private val context: Context) {
@Suppress("DEPRECATION") @Suppress("DEPRECATION")
val addresses = geocoder.getFromLocation(location.latitude, location.longitude, 1) val addresses = geocoder.getFromLocation(location.latitude, location.longitude, 1)
if (!isActive) return@launch
if (!addresses.isNullOrEmpty()) { if (!addresses.isNullOrEmpty()) {
val address = addresses[0] val address = addresses[0]
val names = namesByLevel(address) val names = namesByLevel(address)