Avoid crashing if invalid download and backup location is set
Fixes #8252
Cette révision appartient à :
Parent
824d5e22bc
révision
a8ca7b690f
5 fichiers modifiés avec 9 ajouts et 7 suppressions
|
@ -205,7 +205,7 @@ class AboutScreen : Screen {
|
|||
BuildConfig.DEBUG -> {
|
||||
"Debug ${BuildConfig.COMMIT_SHA}".let {
|
||||
if (withBuildDate) {
|
||||
"$it (${getFormattedBuildTime()}"
|
||||
"$it (${getFormattedBuildTime()})"
|
||||
} else {
|
||||
it
|
||||
}
|
||||
|
|
|
@ -380,8 +380,10 @@ class SettingsBackupScreen : SearchableSettings {
|
|||
Preference.PreferenceItem.TextPreference(
|
||||
title = stringResource(R.string.pref_backup_directory),
|
||||
subtitle = remember(backupDir) {
|
||||
UniFile.fromUri(context, backupDir.toUri()).filePath!! + "/automatic"
|
||||
},
|
||||
(UniFile.fromUri(context, backupDir.toUri())?.filePath)?.let {
|
||||
"$it/automatic"
|
||||
}
|
||||
} ?: stringResource(R.string.invalid_location, backupDir),
|
||||
onClick = {
|
||||
try {
|
||||
pickBackupLocation.launch(null)
|
||||
|
|
|
@ -102,8 +102,8 @@ class SettingsDownloadScreen : SearchableSettings {
|
|||
pref = currentDirPref,
|
||||
title = stringResource(R.string.pref_download_directory),
|
||||
subtitle = remember(currentDir) {
|
||||
UniFile.fromUri(context, currentDir.toUri()).filePath!!
|
||||
},
|
||||
UniFile.fromUri(context, currentDir.toUri())?.filePath
|
||||
} ?: stringResource(R.string.invalid_location, currentDir),
|
||||
entries = mapOf(
|
||||
defaultDirPair,
|
||||
customDirEntryKey to stringResource(R.string.custom_dir),
|
||||
|
|
|
@ -57,7 +57,7 @@ class DownloadProvider(private val context: Context) {
|
|||
.createDirectory(getMangaDirName(mangaTitle))
|
||||
} catch (e: Throwable) {
|
||||
logcat(LogPriority.ERROR, e) { "Invalid download directory" }
|
||||
throw Exception(context.getString(R.string.invalid_download_dir))
|
||||
throw Exception(context.getString(R.string.invalid_location, downloadsDir))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -422,6 +422,7 @@
|
|||
<string name="pref_remove_bookmarked_chapters">Allow deleting bookmarked chapters</string>
|
||||
<string name="pref_remove_exclude_categories">Excluded categories</string>
|
||||
<string name="custom_dir">Custom location</string>
|
||||
<string name="invalid_location">Invalid location: %s</string>
|
||||
<string name="disabled">Disabled</string>
|
||||
<string name="last_read_chapter">Last read chapter</string>
|
||||
<string name="second_to_last">Second to last read chapter</string>
|
||||
|
@ -658,7 +659,6 @@
|
|||
<string name="error_saving_cover">Error saving cover</string>
|
||||
<string name="error_sharing_cover">Error sharing cover</string>
|
||||
<string name="confirm_delete_chapters">Are you sure you want to delete the selected chapters?</string>
|
||||
<string name="invalid_download_dir">Invalid download location</string>
|
||||
<string name="chapter_settings">Chapter settings</string>
|
||||
<string name="confirm_set_chapter_settings">Are you sure you want to save these settings as default?</string>
|
||||
<string name="also_set_chapter_settings_for_library">Also apply to all manga in my library</string>
|
||||
|
|
Référencer dans un nouveau ticket