From 759d96f4061212308967363d2ed301008cf0eec5 Mon Sep 17 00:00:00 2001 From: krille-chan Date: Sat, 7 Oct 2023 10:58:53 +0200 Subject: [PATCH] fix: Avoid collisions when save file on android --- lib/utils/matrix_sdk_extensions/matrix_file_extension.dart | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/utils/matrix_sdk_extensions/matrix_file_extension.dart b/lib/utils/matrix_sdk_extensions/matrix_file_extension.dart index 17028d30..183fb753 100644 --- a/lib/utils/matrix_sdk_extensions/matrix_file_extension.dart +++ b/lib/utils/matrix_sdk_extensions/matrix_file_extension.dart @@ -50,7 +50,12 @@ extension MatrixFileExtension on MatrixFile { Future getDownloadPathAndroid() async { final directory = await getDownloadDirectoryAndroid(); - return '${directory.path}/$name'; + var counter = 1; + var path = '${directory.path}/$name'; + while (await File(path).exists()) { + path = '${directory.path}/(${counter++})$name'; + } + return path; } Future getDownloadDirectoryAndroid() async {