diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt b/app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt index bea236aac..fdfb8eea0 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt @@ -416,7 +416,11 @@ class FullBackupManager(context: Context) : AbstractBackupManager(context) { internal fun restoreSavedSearches(backupSavedSearches: List) { val currentSavedSearches = preferences.savedSearches().get().mapNotNull { val sourceId = it.substringBefore(':').toLongOrNull() ?: return@mapNotNull null - val content = Json.decodeFromString(it.substringAfter(':')) + val content = try { + Json.decodeFromString(it.substringAfter(':')) + } catch (e: Exception) { + return@mapNotNull null + } BackupSavedSearch( content.name, content.query, diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt index 72716ff09..432f218c4 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt @@ -469,7 +469,11 @@ open class BrowseSourcePresenter( return prefs.savedSearches().get().mapNotNull { val id = it.substringBefore(':').toLongOrNull() ?: return@mapNotNull null if (id != source.id) return@mapNotNull null - val content = Json.decodeFromString(it.substringAfter(':')) + val content = try { + Json.decodeFromString(it.substringAfter(':')) + } catch (e: Exception) { + return@mapNotNull null + } try { val originalFilters = source.getFilterList() filterSerializer.deserialize(originalFilters, content.filters) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/index/IndexPresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/index/IndexPresenter.kt index 20236fd1a..cb3769177 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/index/IndexPresenter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/index/IndexPresenter.kt @@ -217,7 +217,11 @@ open class IndexPresenter( return preferences.savedSearches().get().mapNotNull { val id = it.substringBefore(':').toLongOrNull() ?: return@mapNotNull null if (id != source.id) return@mapNotNull null - val content = Json.decodeFromString(it.substringAfter(':')) + val content = try { + Json.decodeFromString(it.substringAfter(':')) + } catch (e: Exception) { + return@mapNotNull null + } try { val originalFilters = source.getFilterList() filterSerializer.deserialize(originalFilters, content.filters)