summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Jurka <mikejurka@google.com>2014-01-24 12:04:45 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-01-24 12:04:45 +0000
commit523e762ad43aaacbf494d207b9556d4f827d26c2 (patch)
tree72dd35c025eb64a8f3fafd10af6069222365a78e
parentd6467b98e8ac64f3b31e77bea83f5d3b7f7d118a (diff)
parentb1f50d70e9eae490765f599fb0cc2db2cb033760 (diff)
downloadandroid_packages_apps_Trebuchet-523e762ad43aaacbf494d207b9556d4f827d26c2.tar.gz
android_packages_apps_Trebuchet-523e762ad43aaacbf494d207b9556d4f827d26c2.tar.bz2
android_packages_apps_Trebuchet-523e762ad43aaacbf494d207b9556d4f827d26c2.zip
Merge "Catch exceptions if Exif is malformed" into ub-now-lunchbox
-rw-r--r--WallpaperPicker/src/com/android/launcher3/WallpaperCropActivity.java3
-rw-r--r--WallpaperPicker/src/com/android/photos/BitmapRegionTileSource.java6
2 files changed, 9 insertions, 0 deletions
diff --git a/WallpaperPicker/src/com/android/launcher3/WallpaperCropActivity.java b/WallpaperPicker/src/com/android/launcher3/WallpaperCropActivity.java
index 96c972334..23fbe73a3 100644
--- a/WallpaperPicker/src/com/android/launcher3/WallpaperCropActivity.java
+++ b/WallpaperPicker/src/com/android/launcher3/WallpaperCropActivity.java
@@ -276,6 +276,9 @@ public class WallpaperCropActivity extends Activity {
}
} catch (IOException e) {
Log.w(LOGTAG, "Getting exif data failed", e);
+ } catch (NullPointerException e) {
+ // Sometimes the ExifInterface has an internal NPE if Exif data isn't valid
+ Log.w(LOGTAG, "Getting exif data failed", e);
} finally {
Utils.closeSilently(bis);
Utils.closeSilently(is);
diff --git a/WallpaperPicker/src/com/android/photos/BitmapRegionTileSource.java b/WallpaperPicker/src/com/android/photos/BitmapRegionTileSource.java
index cdc5cdcbd..764156de0 100644
--- a/WallpaperPicker/src/com/android/photos/BitmapRegionTileSource.java
+++ b/WallpaperPicker/src/com/android/photos/BitmapRegionTileSource.java
@@ -245,6 +245,9 @@ public class BitmapRegionTileSource implements TiledImageRenderer.TileSource {
try {
ei.readExif(mPath);
return true;
+ } catch (NullPointerException e) {
+ Log.w("BitmapRegionTileSource", "reading exif failed", e);
+ return false;
} catch (IOException e) {
Log.w("BitmapRegionTileSource", "getting decoder failed", e);
return false;
@@ -311,6 +314,9 @@ public class BitmapRegionTileSource implements TiledImageRenderer.TileSource {
} catch (IOException e) {
Log.e("BitmapRegionTileSource", "Failed to load URI " + mUri, e);
return false;
+ } catch (NullPointerException e) {
+ Log.e("BitmapRegionTileSource", "Failed to read EXIF for URI " + mUri, e);
+ return false;
} finally {
Utils.closeSilently(is);
}