diff --git a/app/src/main/java/org/linphone/core/CoreContext.kt b/app/src/main/java/org/linphone/core/CoreContext.kt index 2f96b6dc4..f356e47bb 100644 --- a/app/src/main/java/org/linphone/core/CoreContext.kt +++ b/app/src/main/java/org/linphone/core/CoreContext.kt @@ -317,6 +317,10 @@ class CoreContext(val context: Context, coreConfig: Config) { EmojiCompat.init(BundledEmojiCompatConfig(context)) collator.strength = Collator.NO_DECOMPOSITION + if (corePreferences.vfsEnabled) { + FileUtils.clearExistingPlainFiles() + } + Log.i("[Context] Started") } diff --git a/app/src/main/java/org/linphone/utils/FileUtils.kt b/app/src/main/java/org/linphone/utils/FileUtils.kt index aa3a90f6f..30adf0ba1 100644 --- a/app/src/main/java/org/linphone/utils/FileUtils.kt +++ b/app/src/main/java/org/linphone/utils/FileUtils.kt @@ -99,6 +99,27 @@ class FileUtils { return type?.startsWith("audio/") ?: false } + fun clearExistingPlainFiles() { + for (file in coreContext.context.filesDir.listFiles().orEmpty()) { + if (file.path.endsWith(VFS_PLAIN_FILE_EXTENSION)) { + Log.w("[File Utils] Found forgotten plain file: ${file.path}, deleting it") + deleteFile(file.path) + } + } + for (file in coreContext.context.getExternalFilesDir(Environment.DIRECTORY_PICTURES)?.listFiles().orEmpty()) { + if (file.path.endsWith(VFS_PLAIN_FILE_EXTENSION)) { + Log.w("[File Utils] Found forgotten plain file: ${file.path}, deleting it") + deleteFile(file.path) + } + } + for (file in coreContext.context.getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS)?.listFiles().orEmpty()) { + if (file.path.endsWith(VFS_PLAIN_FILE_EXTENSION)) { + Log.w("[File Utils] Found forgotten plain file: ${file.path}, deleting it") + deleteFile(file.path) + } + } + } + fun getFileStorageDir(isPicture: Boolean = false): File { var path: File? = null if (Environment.getExternalStorageState() == Environment.MEDIA_MOUNTED) {