diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/CategoriesRestorer.kt b/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/CategoriesRestorer.kt index 36539b211..23a2d47fa 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/CategoriesRestorer.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/CategoriesRestorer.kt @@ -21,14 +21,15 @@ class CategoriesRestorer( val categories = backupCategories .sortedBy { it.order } - .distinctBy { it.name } .map { - val newOrder = nextOrder++ - dbCategoriesByName[it.name] - ?: handler.awaitOneExecutable { - categoriesQueries.insert(it.name, newOrder, it.flags) - categoriesQueries.selectLastInsertedRowId() - }.let { id -> it.toCategory(id).copy(order = newOrder) } + val dbCategory = dbCategoriesByName[it.name] + if (dbCategory != null) return@map dbCategory + val order = nextOrder++ + handler.awaitOneExecutable { + categoriesQueries.insert(it.name, order, it.flags) + categoriesQueries.selectLastInsertedRowId() + } + .let { id -> it.toCategory(id).copy(order = order) } } libraryPreferences.categorizedDisplaySettings().set(