diff options
author | Earl Ou <shunhsingou@google.com> | 2012-08-08 15:19:13 +0800 |
---|---|---|
committer | Earl Ou <shunhsingou@google.com> | 2012-08-08 15:19:13 +0800 |
commit | 0d64f476c62215c7738655f62b89f93ac60c7fe2 (patch) | |
tree | 7bcc32887b8e73ede7a484dd8601c9707637e457 /src/com/android/gallery3d/exif/IfdParser.java | |
parent | ab3625ea8cab1cc338578090feefeb642f109eca (diff) | |
download | android_packages_apps_Snap-0d64f476c62215c7738655f62b89f93ac60c7fe2.tar.gz android_packages_apps_Snap-0d64f476c62215c7738655f62b89f93ac60c7fe2.tar.bz2 android_packages_apps_Snap-0d64f476c62215c7738655f62b89f93ac60c7fe2.zip |
Handle error when string length=0 in IfdParser
Change-Id: I3a51e85060f3acd5026555e5f8d21f8cb2e0641e
Diffstat (limited to 'src/com/android/gallery3d/exif/IfdParser.java')
-rw-r--r-- | src/com/android/gallery3d/exif/IfdParser.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/com/android/gallery3d/exif/IfdParser.java b/src/com/android/gallery3d/exif/IfdParser.java index b0b0bce10..0d1059cb0 100644 --- a/src/com/android/gallery3d/exif/IfdParser.java +++ b/src/com/android/gallery3d/exif/IfdParser.java @@ -125,9 +125,13 @@ public class IfdParser { } public String readString(int n) throws IOException { - byte[] buf = new byte[n]; - mTiffStream.readOrThrow(buf); - return new String(buf, 0, n - 1, "UTF8"); + if (n > 0) { + byte[] buf = new byte[n]; + mTiffStream.readOrThrow(buf); + return new String(buf, 0, n - 1, "UTF8"); + } else { + return ""; + } } public String readString(int n, Charset charset) throws IOException { |