From 49dc63c876e415cc76451cfc77798aad5bf19ad4 Mon Sep 17 00:00:00 2001 From: davotoula Date: Mon, 22 Sep 2025 20:22:45 +0200 Subject: [PATCH] Sanity check: if compressed file is larger than original, return original --- .../amethyst/service/uploads/MediaCompressor.kt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/service/uploads/MediaCompressor.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/service/uploads/MediaCompressor.kt index 8f46b9097..7260adae4 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/service/uploads/MediaCompressor.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/service/uploads/MediaCompressor.kt @@ -290,6 +290,13 @@ class MediaCompressor { path: String?, ) { if (path != null) { + // Sanity check: if compressed file is larger than original, return original + if (originalSize > 0 && size >= originalSize) { + Log.d("MediaCompressor", "Compressed file ($size bytes) is larger than original ($originalSize bytes). Using original file.") + continuation.resume(MediaCompressorResult(uri, contentType, null)) + return + } + val reductionPercent = if (originalSize > 0) { ((originalSize - size) * 100.0 / originalSize).toInt()