From b4a2725f03d6091ca39b60ae529f8ae8c93b5de1 Mon Sep 17 00:00:00 2001 From: akwizgran Date: Mon, 24 May 2021 14:56:50 +0100 Subject: [PATCH] Add workarounds for missing MIME type information on API 16. --- .../briar/android/attachment/media/ImageHelperImpl.java | 1 + .../android/attachment/media/ImageSizeCalculatorImpl.java | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/briar-android/src/main/java/org/briarproject/briar/android/attachment/media/ImageHelperImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/attachment/media/ImageHelperImpl.java index 97a596674..384437b84 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/attachment/media/ImageHelperImpl.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/attachment/media/ImageHelperImpl.java @@ -34,6 +34,7 @@ class ImageHelperImpl implements ImageHelper { @Nullable @Override public String getExtensionFromMimeType(String mimeType) { + if ("image/webp".equals(mimeType)) return "webp"; MimeTypeMap mimeTypeMap = MimeTypeMap.getSingleton(); return mimeTypeMap.getExtensionFromMimeType(mimeType); } diff --git a/briar-android/src/main/java/org/briarproject/briar/android/attachment/media/ImageSizeCalculatorImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/attachment/media/ImageSizeCalculatorImpl.java index d0e6d6dae..0df8021da 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/attachment/media/ImageSizeCalculatorImpl.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/attachment/media/ImageSizeCalculatorImpl.java @@ -21,6 +21,7 @@ import static androidx.exifinterface.media.ExifInterface.TAG_ORIENTATION; import static java.util.logging.Level.WARNING; import static java.util.logging.Logger.getLogger; import static org.briarproject.bramble.util.LogUtils.logException; +import static org.briarproject.bramble.util.StringUtils.isNullOrEmpty; @NotNullByDefault class ImageSizeCalculatorImpl implements ImageSizeCalculator { @@ -61,6 +62,10 @@ class ImageSizeCalculatorImpl implements ImageSizeCalculator { logException(LOG, WARNING, e); } } + if (!size.hasError() && isNullOrEmpty(size.getMimeType())) { + LOG.info("Could not determine content type, using supplied type"); + size = new Size(size.getWidth(), size.getHeight(), contentType); + } return size; }