diff --git a/data/src/main/java/tachiyomi/data/backup/RestoreRepositoryImpl.kt b/data/src/main/java/tachiyomi/data/backup/RestoreRepositoryImpl.kt index d4a4ac414..cf9dd19ab 100644 --- a/data/src/main/java/tachiyomi/data/backup/RestoreRepositoryImpl.kt +++ b/data/src/main/java/tachiyomi/data/backup/RestoreRepositoryImpl.kt @@ -257,17 +257,10 @@ class RestoreRepositoryImpl( mangaId = manga.id, ) - if (track.forComparison() == dbTrack.forComparison()) { - // Same state; skip - return@mapNotNull null - } + if (track.lastChapterRead <= dbTrack.lastChapterRead) return@mapNotNull null // Update to an existing track - dbTrack.copy( - remoteId = track.remoteId, - libraryId = track.libraryId, - lastChapterRead = max(dbTrack.lastChapterRead, track.lastChapterRead), - ) + dbTrack.copy(lastChapterRead = track.lastChapterRead) } .partition { it.id > 0 } @@ -295,8 +288,6 @@ class RestoreRepositoryImpl( } } - private fun Track.forComparison() = this.copy(id = 0L, mangaId = 0L) - private suspend fun restoreExcludedScanlators(manga: Manga, excludedScanlators: List) { if (excludedScanlators.isEmpty()) return val existingExcludedScanlators = database.excluded_scanlatorsQueries