From 218f3d0ed3c65eb16bae6e189a3cc2c46fdaff31 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Wed, 2 May 2018 21:31:16 +0200 Subject: hard code ogg + audio/ mime type to oga --- .../java/de/pixart/messenger/persistance/FileBackend.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/main/java/de/pixart/messenger/persistance/FileBackend.java') diff --git a/src/main/java/de/pixart/messenger/persistance/FileBackend.java b/src/main/java/de/pixart/messenger/persistance/FileBackend.java index 3613802aa..4e959a868 100644 --- a/src/main/java/de/pixart/messenger/persistance/FileBackend.java +++ b/src/main/java/de/pixart/messenger/persistance/FileBackend.java @@ -351,10 +351,11 @@ public class FileBackend { Log.d(Config.LOGTAG, "copy " + uri.toString() + " to private storage (mime=" + mime + ")"); String extension = MimeUtils.guessExtensionFromMimeType(mime); if (extension == null) { + Log.d(Config.LOGTAG, "extension from mime type was null"); extension = getExtensionFromUri(uri); } - if (extension == null) { - extension = MimeUtils.guessExtensionFromMimeType(mime); + if ("ogg".equals(extension) && type != null && type.startsWith("audio/")) { + extension = "oga"; } String filename = fileDateFormat.format(new Date(message.getTimeSent())) + "_" + message.getUuid().substring(0, 4); message.setRelativeFilePath(filename + "." + extension); @@ -376,6 +377,12 @@ public class FileBackend { cursor.close(); } } + if (filename == null) { + final List segments = uri.getPathSegments(); + if (segments.size() > 0) { + filename = segments.get(segments.size() - 1); + } + } int pos = filename == null ? -1 : filename.lastIndexOf('.'); return pos > 0 ? filename.substring(pos + 1) : null; } -- cgit v1.2.3