summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Ray Essick <essick@google.com> 2023-03-21 00:12:58 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2023-03-21 00:12:58 +0000
commitac3198319b256eec6f0ac0a48f742988debfe31d (patch)
treea8558d5453b7a5dba545cb11188c1bd87784b0d7
parent9a553c152042dd218ff4cb84e39287b7089084c8 (diff)
parentd514714e1418234a253962040b87c2cebfa8f021 (diff)
Merge "Use a ExifInterface ctor with a file descriptor as a parameter" am: f715c61542 am: d514714e14
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2485757 Change-Id: I2a7f259bbf366719ebdd9423b61f0fd64791e65a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--media/java/android/media/ThumbnailUtils.java25
1 files changed, 14 insertions, 11 deletions
diff --git a/media/java/android/media/ThumbnailUtils.java b/media/java/android/media/ThumbnailUtils.java
index e6d95eb6d5a1..cf3ba872feb5 100644
--- a/media/java/android/media/ThumbnailUtils.java
+++ b/media/java/android/media/ThumbnailUtils.java
@@ -49,6 +49,7 @@ import com.android.internal.util.ArrayUtils;
import libcore.io.IoUtils;
import java.io.File;
+import java.io.FileInputStream;
import java.io.IOException;
import java.util.Arrays;
import java.util.Comparator;
@@ -255,17 +256,19 @@ public class ThumbnailUtils {
// get orientation
if (MediaFile.isExifMimeType(mimeType)) {
- exif = new ExifInterface(file);
- switch (exif.getAttributeInt(ExifInterface.TAG_ORIENTATION, 0)) {
- case ExifInterface.ORIENTATION_ROTATE_90:
- orientation = 90;
- break;
- case ExifInterface.ORIENTATION_ROTATE_180:
- orientation = 180;
- break;
- case ExifInterface.ORIENTATION_ROTATE_270:
- orientation = 270;
- break;
+ try (FileInputStream is = new FileInputStream(file)) {
+ exif = new ExifInterface(is.getFD());
+ switch (exif.getAttributeInt(ExifInterface.TAG_ORIENTATION, 0)) {
+ case ExifInterface.ORIENTATION_ROTATE_90:
+ orientation = 90;
+ break;
+ case ExifInterface.ORIENTATION_ROTATE_180:
+ orientation = 180;
+ break;
+ case ExifInterface.ORIENTATION_ROTATE_270:
+ orientation = 270;
+ break;
+ }
}
}