diff options
| -rw-r--r-- | media/java/android/media/ExifInterface.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/media/java/android/media/ExifInterface.java b/media/java/android/media/ExifInterface.java index 2395b24f7136..b96a5853b9dc 100644 --- a/media/java/android/media/ExifInterface.java +++ b/media/java/android/media/ExifInterface.java @@ -3252,7 +3252,7 @@ public class ExifInterface { int thumbnailLength = jpegInterchangeFormatLengthAttribute.getIntValue(mExifByteOrder); // The following code limits the size of thumbnail size not to overflow EXIF data area. - thumbnailLength = Math.min(thumbnailLength, in.available() - thumbnailOffset); + thumbnailLength = Math.min(thumbnailLength, in.getLength() - thumbnailOffset); if (mMimeType == IMAGE_TYPE_JPEG || mMimeType == IMAGE_TYPE_RAF || mMimeType == IMAGE_TYPE_RW2) { thumbnailOffset += mExifOffset; @@ -3981,6 +3981,10 @@ public class ExifInterface { public double readDouble() throws IOException { return Double.longBitsToDouble(readLong()); } + + public int getLength() { + return mLength; + } } // An output stream to write EXIF data area, which can be written in either little or big endian |