aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Taylor <tomtaylor@google.com>2017-07-12 19:20:09 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-07-12 19:20:09 +0000
commitc12af8d012b6b9328e2fab3ff7f33c7901bb0bf6 (patch)
tree87322725938ae70eac8d317378862f76e1e973bd
parentd3b23f568aa476cb390dfbd30b5c3ffce5d85e79 (diff)
parentf9b9dc3d2f4f9c329ecb07727c1960e168057c2e (diff)
downloadMessaging-c12af8d012b6b9328e2fab3ff7f33c7901bb0bf6.tar.gz
37742976 - Catch bad gifs am: e0f247e399 am: 7c28ca34ec am: 22bbfd7360 am: 7a6b99a4a4 am: 6ea30b87b1 am: a072033ce4 am: 93d52cb5e2 am: cbed68f73bandroid-vts-8.0_r2android-vts-8.0_r1
am: f9b9dc3d2f Change-Id: Ica8bedeb18ee6604e1382f54f0ad910b7cfa8c40
-rw-r--r--src/com/android/messaging/datamodel/media/GifImageResource.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/com/android/messaging/datamodel/media/GifImageResource.java b/src/com/android/messaging/datamodel/media/GifImageResource.java
index d50cf47..6801165 100644
--- a/src/com/android/messaging/datamodel/media/GifImageResource.java
+++ b/src/com/android/messaging/datamodel/media/GifImageResource.java
@@ -23,6 +23,7 @@ import android.support.rastermill.FrameSequence;
import android.support.rastermill.FrameSequenceDrawable;
import com.android.messaging.util.Assert;
+import com.android.messaging.util.LogUtil;
import java.io.IOException;
import java.io.InputStream;
@@ -55,7 +56,14 @@ public class GifImageResource extends ImageResource {
@Override
public Drawable getDrawable(Resources resources) {
- return new FrameSequenceDrawable(mFrameSequence);
+ try {
+ return new FrameSequenceDrawable(mFrameSequence);
+ } catch (final Exception e) {
+ // Malicious gif images can make platform throw different kind of exceptions. Catch
+ // them all.
+ LogUtil.e(LogUtil.BUGLE_TAG, "Error getting drawable for GIF", e);
+ return null;
+ }
}
@Override