details: Ensure app is not null before fetching more info

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
Aayush Gupta
2025-06-27 13:33:54 +08:00
parent 0a721fa571
commit 154d468322

View File

@@ -107,7 +107,7 @@ class AppDetailsViewModel @Inject constructor(
private val download = combine(app, downloadHelper.downloadsList) { a, list -> private val download = combine(app, downloadHelper.downloadsList) { a, list ->
if (a?.packageName.isNullOrBlank()) return@combine null if (a?.packageName.isNullOrBlank()) return@combine null
list.find { d -> d.packageName == a?.packageName } list.find { d -> d.packageName == a.packageName }
}.stateIn(viewModelScope, SharingStarted.Eagerly, null) }.stateIn(viewModelScope, SharingStarted.Eagerly, null)
private val isInstalled: Boolean private val isInstalled: Boolean
@@ -155,7 +155,7 @@ class AppDetailsViewModel @Inject constructor(
} }
}.invokeOnCompletion { throwable -> }.invokeOnCompletion { throwable ->
// Only proceed if there was no error while fetching the app details // Only proceed if there was no error while fetching the app details
if (throwable != null) return@invokeOnCompletion if (throwable != null || app.value == null) return@invokeOnCompletion
fetchFavourite(packageName) fetchFavourite(packageName)
fetchFeaturedReviews(packageName) fetchFeaturedReviews(packageName)