Fix crash if you somehow have a invalid saved search json
This commit is contained in:
parent
b769043f36
commit
0f4414e359
@ -416,7 +416,11 @@ class FullBackupManager(context: Context) : AbstractBackupManager(context) {
|
||||
internal fun restoreSavedSearches(backupSavedSearches: List<BackupSavedSearch>) {
|
||||
val currentSavedSearches = preferences.savedSearches().get().mapNotNull {
|
||||
val sourceId = it.substringBefore(':').toLongOrNull() ?: return@mapNotNull null
|
||||
val content = Json.decodeFromString<JsonSavedSearch>(it.substringAfter(':'))
|
||||
val content = try {
|
||||
Json.decodeFromString<JsonSavedSearch>(it.substringAfter(':'))
|
||||
} catch (e: Exception) {
|
||||
return@mapNotNull null
|
||||
}
|
||||
BackupSavedSearch(
|
||||
content.name,
|
||||
content.query,
|
||||
|
@ -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<JsonSavedSearch>(it.substringAfter(':'))
|
||||
val content = try {
|
||||
Json.decodeFromString<JsonSavedSearch>(it.substringAfter(':'))
|
||||
} catch (e: Exception) {
|
||||
return@mapNotNull null
|
||||
}
|
||||
try {
|
||||
val originalFilters = source.getFilterList()
|
||||
filterSerializer.deserialize(originalFilters, content.filters)
|
||||
|
@ -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<JsonSavedSearch>(it.substringAfter(':'))
|
||||
val content = try {
|
||||
Json.decodeFromString<JsonSavedSearch>(it.substringAfter(':'))
|
||||
} catch (e: Exception) {
|
||||
return@mapNotNull null
|
||||
}
|
||||
try {
|
||||
val originalFilters = source.getFilterList()
|
||||
filterSerializer.deserialize(originalFilters, content.filters)
|
||||
|
Loading…
x
Reference in New Issue
Block a user