From 10aea14f9aad391d9cd15e7950cca3722d7df368 Mon Sep 17 00:00:00 2001 From: Stephen Paul Weber Date: Sat, 30 Sep 2023 21:45:40 -0500 Subject: [PATCH] Don't save a 0 file size when we can't read the file --- .../java/eu/siacs/conversations/persistance/FileBackend.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/eu/siacs/conversations/persistance/FileBackend.java b/src/main/java/eu/siacs/conversations/persistance/FileBackend.java index ce04899821e040083137d57c3b8b7c6a757f2cf2..23e2727bb849c3764918261e61a7e41ba0ce8028 100644 --- a/src/main/java/eu/siacs/conversations/persistance/FileBackend.java +++ b/src/main/java/eu/siacs/conversations/persistance/FileBackend.java @@ -1942,14 +1942,14 @@ public class FileBackend { if (encrypted && !file.exists()) { Log.d(Config.LOGTAG, "skipping updateFileParams because file is encrypted"); final DownloadableFile encryptedFile = getFile(message, false); - fileParams.size = encryptedFile.getSize(); + if (encryptedFile.canRead()) fileParams.size = encryptedFile.getSize(); } else { Log.d(Config.LOGTAG, "running updateFileParams"); final boolean ambiguous = MimeUtils.AMBIGUOUS_CONTAINER_FORMATS.contains(mime); final boolean video = mime != null && mime.startsWith("video/"); final boolean audio = mime != null && mime.startsWith("audio/"); final boolean pdf = "application/pdf".equals(mime); - fileParams.size = file.getSize(); + if (file.canRead()) fileParams.size = file.getSize(); if (ambiguous) { try { final Dimensions dimensions = getVideoDimensions(file);