diff options
author | Jack Palevich <jackpal@google.com> | 2012-06-04 16:15:47 +0800 |
---|---|---|
committer | Jack Palevich <jackpal@google.com> | 2012-06-04 16:15:47 +0800 |
commit | 05c66cc5cc6357be19fdef0fc131731368c38646 (patch) | |
tree | 92af63f46d8a7e67792a429062a33925a597ae6f | |
parent | 1fbbc0716f9b70c6dcee00c4550757077ef7f7b5 (diff) | |
download | frameworks_base-05c66cc5cc6357be19fdef0fc131731368c38646.zip frameworks_base-05c66cc5cc6357be19fdef0fc131731368c38646.tar.gz frameworks_base-05c66cc5cc6357be19fdef0fc131731368c38646.tar.bz2 |
Don't crash when scaling Bitmaps with private Bitmap.Configs
Bug: 6526197
Change-Id: I89f008f90888f0a679274c00293342ab0fb0e28e
-rw-r--r-- | media/java/android/media/RemoteControlClient.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/media/java/android/media/RemoteControlClient.java b/media/java/android/media/RemoteControlClient.java index 18b4ee6..f1c4d34 100644 --- a/media/java/android/media/RemoteControlClient.java +++ b/media/java/android/media/RemoteControlClient.java @@ -854,7 +854,11 @@ public class RemoteControlClient float scale = Math.min((float) maxWidth / width, (float) maxHeight / height); int newWidth = Math.round(scale * width); int newHeight = Math.round(scale * height); - Bitmap outBitmap = Bitmap.createBitmap(newWidth, newHeight, bitmap.getConfig()); + Bitmap.Config newConfig = bitmap.getConfig(); + if (newConfig == null) { + newConfig = Bitmap.Config.ARGB_8888; + } + Bitmap outBitmap = Bitmap.createBitmap(newWidth, newHeight, newConfig); Canvas canvas = new Canvas(outBitmap); Paint paint = new Paint(); paint.setAntiAlias(true); |