From 368bc8441a76e2193859bfd73121787936a0977d Mon Sep 17 00:00:00 2001 From: ztenghui Date: Thu, 12 Sep 2013 16:20:19 -0700 Subject: Fix crash due to a hole in setDataSource. setDataSource() somehow throws a RuntimeException instead of IllegalArgumentException when seeing unsupported video file. bug:10732664 Change-Id: I79ab1f1afd8750bb37df0c8fc9448dbb2e00230a --- src/com/android/camera/data/LocalMediaData.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/com/android/camera/data/LocalMediaData.java b/src/com/android/camera/data/LocalMediaData.java index 8e5216d17..3679b08e4 100644 --- a/src/com/android/camera/data/LocalMediaData.java +++ b/src/com/android/camera/data/LocalMediaData.java @@ -581,7 +581,9 @@ public abstract class LocalMediaData implements LocalData { String rotation = null; try { retriever.setDataSource(path); - } catch (IllegalArgumentException ex) { + } catch (RuntimeException ex) { + // setDataSource() can cause RuntimeException beyond + // IllegalArgumentException. e.g: data contain *.avi file. retriever.release(); Log.e(TAG, "MediaMetadataRetriever.setDataSource() fail:" + ex.getMessage()); -- cgit v1.2.3