diff options
author | Tom Taylor <tomtaylor@google.com> | 2017-07-12 19:06:10 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-07-12 19:06:10 +0000 |
commit | 7a6b99a4a4dcb9e90b33446d48b296a7b5aa7de5 (patch) | |
tree | 49e1204c324a715c89a1346dc9829571432b2b0f | |
parent | cc1dbfc497d66aaa1d214dc460cd9d4cf0e68497 (diff) | |
parent | 22bbfd736069a9f988806c44cbc6788ee539213c (diff) | |
download | Messaging-7a6b99a4a4dcb9e90b33446d48b296a7b5aa7de5.tar.gz |
37742976 - Catch bad gifs am: e0f247e399 am: 7c28ca34ec
am: 22bbfd7360
Change-Id: Ibe13d61b03cc6ae40d6782bf7ae045b5aeb491de
-rw-r--r-- | src/com/android/messaging/datamodel/media/GifImageResource.java | 10 |
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 |