From 7c1e55eb7fa7568f99577ae3534a61876842b362 Mon Sep 17 00:00:00 2001 From: arkon Date: Tue, 2 Nov 2021 17:26:29 -0400 Subject: [PATCH] Update metadata in same scope as the rest of library update (fixes #5702, probably) --- .../data/library/LibraryUpdateService.kt | 26 +++++++------------ 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt index 8937082ccf..8e2bed25f2 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt @@ -43,7 +43,6 @@ import eu.kanade.tachiyomi.util.system.toast import kotlinx.coroutines.CoroutineExceptionHandler import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.Job import kotlinx.coroutines.SupervisorJob import kotlinx.coroutines.async @@ -386,24 +385,19 @@ class LibraryUpdateService( suspend fun updateManga(manga: Manga): Pair, List> { val source = sourceManager.getOrStub(manga.source) - // Update manga details metadata in the background + // Update manga details metadata if (preferences.autoUpdateMetadata()) { - val handler = CoroutineExceptionHandler { _, exception -> - logcat(LogPriority.ERROR, exception) + val updatedManga = source.getMangaDetails(manga.toMangaInfo()) + val sManga = updatedManga.toSManga() + // Avoid "losing" existing cover + if (!sManga.thumbnail_url.isNullOrEmpty()) { + manga.prepUpdateCover(coverCache, sManga, false) + } else { + sManga.thumbnail_url = manga.thumbnail_url } - GlobalScope.launch(Dispatchers.IO + handler) { - val updatedManga = source.getMangaDetails(manga.toMangaInfo()) - val sManga = updatedManga.toSManga() - // Avoid "losing" existing cover - if (!sManga.thumbnail_url.isNullOrEmpty()) { - manga.prepUpdateCover(coverCache, sManga, false) - } else { - sManga.thumbnail_url = manga.thumbnail_url - } - manga.copyFrom(sManga) - db.insertManga(manga).executeAsBlocking() - } + manga.copyFrom(sManga) + db.insertManga(manga).executeAsBlocking() } val chapters = source.getChapterList(manga.toMangaInfo())