From fdff8bc8658c541d00aefdfa74ac9d61b1853eed Mon Sep 17 00:00:00 2001 From: Earl Ou Date: Fri, 5 Oct 2012 15:22:33 +0800 Subject: Use exiftool as ground truth for Exif API test The ground truth XML file was generated by parsing the output from Phil Harvey's exiftool. Then we can test photos from 5000+ different camera provided by exiftool's website. Change-Id: Ida2c0409929be450a3cbb4331504aadb41138bea --- src/com/android/gallery3d/exif/ExifTag.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'src/com/android/gallery3d') diff --git a/src/com/android/gallery3d/exif/ExifTag.java b/src/com/android/gallery3d/exif/ExifTag.java index 49cb6edbc..86ac7be74 100644 --- a/src/com/android/gallery3d/exif/ExifTag.java +++ b/src/com/android/gallery3d/exif/ExifTag.java @@ -1361,9 +1361,10 @@ public class ExifTag { StringBuilder sbuilder = new StringBuilder(); switch (getDataType()) { case ExifTag.TYPE_UNDEFINED: + sbuilder.append(new String((byte[]) mValue)); + break; case ExifTag.TYPE_UNSIGNED_BYTE: - byte buf[] = new byte[getComponentCount()]; - getBytes(buf); + byte buf[] = (byte[]) mValue; for(int i = 0, n = getComponentCount(); i < n; i++) { if(i != 0) sbuilder.append(" "); sbuilder.append(String.format("%02x", buf[i])); @@ -1415,6 +1416,15 @@ public class ExifTag { || tagId == TAG_INTEROPERABILITY_IFD; } + /** + * Returns true if the ID is one of the following: {@link #TAG_EXIF_IFD}, + * {@link #TAG_GPS_IFD}, {@link #TAG_INTEROPERABILITY_IFD} + */ + static boolean isSubIfdOffsetTag(short tagId) { + return tagId == TAG_EXIF_IFD + || tagId == TAG_GPS_IFD + || tagId == TAG_INTEROPERABILITY_IFD; + } @Override public boolean equals(Object obj) { if (obj instanceof ExifTag) { -- cgit v1.2.3