From a0e2f126355805c07ae83671eb8a0478a280ad16 Mon Sep 17 00:00:00 2001 From: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com> Date: Sun, 27 Nov 2022 09:37:22 +0700 Subject: [PATCH] Fix library not loading when not logged in to any tracker (#8629) (cherry picked from commit 217b03a292457b648ab8abd7c2d264382ddb3023) # Conflicts: # app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt --- .../ui/library/LibraryScreenModel.kt | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt index 7ff70e9a7..3112e8f75 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt @@ -613,16 +613,17 @@ class LibraryScreenModel( */ private fun getTrackingFilterFlow(): Flow> { val loggedServices = trackManager.services.filter { it.isLogged } - val a = loggedServices - .map { libraryPreferences.filterTracking(it.id.toInt()).changes() } - .toTypedArray() - if (a.isEmpty()) { - return flowOf(emptyMap()) - } - return combine(*a) { - loggedServices - .mapIndexed { index, trackService -> trackService.id to it[index] } - .toMap() + return if (loggedServices.isNotEmpty()) { + val prefFlows = loggedServices + .map { libraryPreferences.filterTracking(it.id.toInt()).changes() } + .toTypedArray() + combine(*prefFlows) { + loggedServices + .mapIndexed { index, trackService -> trackService.id to it[index] } + .toMap() + } + } else { + flowOf(emptyMap()) } }