diff --git a/app/src/main/java/io/legado/app/help/storage/Restore.kt b/app/src/main/java/io/legado/app/help/storage/Restore.kt index 6c949bb19..fd4b1dd58 100644 --- a/app/src/main/java/io/legado/app/help/storage/Restore.kt +++ b/app/src/main/java/io/legado/app/help/storage/Restore.kt @@ -220,12 +220,17 @@ object Restore { if (BackupConfig.keyIsNotIgnore(key)) { when (key) { PreferKey.webDavPassword -> { - edit.putString( - key, - kotlin.runCatching { - aes.decryptStr(value.toString()) - }.getOrDefault(value.toString()) - ) + kotlin.runCatching { + aes.decryptStr(value.toString()) + }.getOrNull()?.let { + edit.putString(key, it) + } ?: let { + if (appCtx.getPrefString(PreferKey.webDavPassword) + .isNullOrBlank() + ) { + edit.putString(key, value.toString()) + } + } } else -> when (value) {