From 64a2c98ad74de48081b1e5d2cadaf2cf22a2bd30 Mon Sep 17 00:00:00 2001 From: Cuong-Tran Date: Sat, 3 Aug 2024 22:52:47 +0700 Subject: [PATCH] Fix: missing feed if saved searches already exists --- .../restore/restorers/SavedSearchRestorer.kt | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/SavedSearchRestorer.kt b/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/SavedSearchRestorer.kt index 12cda7227..1e9428bd9 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/SavedSearchRestorer.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/SavedSearchRestorer.kt @@ -19,14 +19,18 @@ class SavedSearchRestorer( handler.await(true) { // KMK <-- val currentSavedSearches = handler.awaitList { - saved_searchQueries.selectNamesAndSources() + saved_searchQueries.selectAll() } - backupSavedSearches.filter { backupSavedSearch -> - currentSavedSearches.none { it.source == backupSavedSearch.source && it.name == backupSavedSearch.name } - }.forEach { backupSavedSearch -> + backupSavedSearches.forEach { backupSavedSearch -> + val existedSavedSearchId = currentSavedSearches.find { + it.source == backupSavedSearch.source && + it.name == backupSavedSearch.name && + it.query == backupSavedSearch.query && + it.filters_json == backupSavedSearch.filterList + }?._id // KMK --> - val savedSearchId = handler.awaitOneExecutable(true) { + val savedSearchId = existedSavedSearchId ?: handler.awaitOneExecutable(true) { // KMK <-- saved_searchQueries.insert( source = backupSavedSearch.source,