Handle unknown file extensions gracefully

This commit is contained in:
Vishnu Mohandas 2021-06-29 09:37:13 +05:30
parent bf210d18ab
commit 1a07114b5e

View file

@ -155,9 +155,14 @@ Future<io.File> _downloadAndDecrypt(
Sodium.base642bin(file.fileDecryptionHeader), decryptFileKey(file)); Sodium.base642bin(file.fileDecryptionHeader), decryptFileKey(file));
_logger.info("File decrypted: " + file.uploadedFileID.toString()); _logger.info("File decrypted: " + file.uploadedFileID.toString());
encryptedFile.deleteSync(); encryptedFile.deleteSync();
var fileExtension = extension(file.title).substring(1).toLowerCase(); var fileExtension = "unknown";
try {
fileExtension = extension(file.title).substring(1).toLowerCase();
} catch(e) {
_logger.warning("Could not capture file extension");
}
var outputFile = decryptedFile; var outputFile = decryptedFile;
if (io.Platform.isAndroid && fileExtension == "heic") { if (fileExtension=="unknown" || (io.Platform.isAndroid && fileExtension == "heic")) {
outputFile = await FlutterImageCompress.compressAndGetFile( outputFile = await FlutterImageCompress.compressAndGetFile(
decryptedFilePath, decryptedFilePath,
decryptedFilePath + ".jpg", decryptedFilePath + ".jpg",