diff options
| author | 2020-07-08 03:03:19 +0000 | |
|---|---|---|
| committer | 2020-07-08 03:03:19 +0000 | |
| commit | b7e27a6598f94a87c5fe50cdadc0722ec26b97e7 (patch) | |
| tree | 98c6b08858f9e684abe3ffd46c7d34161a26e600 | |
| parent | af41f0ac481c08e8a40d10abdac3c5d4974325d8 (diff) | |
| parent | 5be32a1c11444ba1064d74a3a524c9b9da0cb670 (diff) | |
Merge "Tweaking workaround to use fallback with null buffer" into rvc-dev am: 5be32a1c11
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12100099
Change-Id: Ice79c30eeb522ff47191feb8d4f1f20c57a6d995
| -rw-r--r-- | packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.java b/packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.java index 279a200949a5..1e505801c2c4 100644 --- a/packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.java +++ b/packages/SystemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.java @@ -26,6 +26,7 @@ import android.app.ActivityManager.TaskSnapshot; import android.graphics.Bitmap; import android.graphics.Color; import android.graphics.GraphicBuffer; +import android.graphics.Point; import android.graphics.Rect; import android.hardware.HardwareBuffer; import android.util.Log; @@ -63,10 +64,12 @@ public class ThumbnailData { public ThumbnailData(TaskSnapshot snapshot) { final GraphicBuffer buffer = snapshot.getSnapshot(); - if (buffer != null && (buffer.getUsage() & HardwareBuffer.USAGE_GPU_SAMPLED_IMAGE) == 0) { + if (buffer == null || (buffer.getUsage() & HardwareBuffer.USAGE_GPU_SAMPLED_IMAGE) == 0) { // TODO(b/157562905): Workaround for a crash when we get a snapshot without this state - Log.e("ThumbnailData", "Unexpected snapshot without USAGE_GPU_SAMPLED_IMAGE"); - thumbnail = Bitmap.createBitmap(buffer.getWidth(), buffer.getHeight(), ARGB_8888); + Log.e("ThumbnailData", "Unexpected snapshot without USAGE_GPU_SAMPLED_IMAGE: " + + buffer); + Point taskSize = snapshot.getTaskSize(); + thumbnail = Bitmap.createBitmap(taskSize.x, taskSize.y, ARGB_8888); thumbnail.eraseColor(Color.BLACK); } else { thumbnail = Bitmap.wrapHardwareBuffer(buffer, snapshot.getColorSpace()); |