0
0
mirror of https://github.com/ankidroid/Anki-Android.git synced 2024-09-20 12:02:16 +02:00

Catch IO errors in media check with new schema

Closes #12026
This commit is contained in:
Damien Elmes 2022-08-15 02:42:08 +10:00 committed by Mike Hardy
parent f84baf6a07
commit d782901b2b

View File

@ -61,6 +61,7 @@ import com.google.android.material.snackbar.Snackbar
import com.ichi2.anim.ActivityTransitionAnimation.Direction.*
import com.ichi2.anki.CollectionHelper.CollectionIntegrityStorageCheck
import com.ichi2.anki.CollectionManager.TR
import com.ichi2.anki.CollectionManager.withCol
import com.ichi2.anki.CollectionManager.withOpenColOrNull
import com.ichi2.anki.InitialActivity.StartupFailure
import com.ichi2.anki.InitialActivity.StartupFailure.*
@ -1465,7 +1466,14 @@ open class DeckPicker :
override fun mediaCheck() {
if (hasStorageAccessPermission(this)) {
TaskManager.launchCollectionTask(CheckMedia(), mediaCheckListener())
if (!BackendFactory.defaultLegacySchema) {
launchCatchingTask {
val result = withProgress { withCol { media.check() } }
showMediaCheckDialog(MediaCheckDialog.DIALOG_MEDIA_CHECK_RESULTS, result)
}
} else {
TaskManager.launchCollectionTask(CheckMedia(), mediaCheckListener())
}
} else {
requestStoragePermission()
}