summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author chaviw <chaviw@google.com> 2020-09-08 10:00:07 -0700
committer chaviw <chaviw@google.com> 2020-09-08 10:00:07 -0700
commit78bc99e655edd71242b43148fa105186fdfcb685 (patch)
treecd5a07dcfac510e5a260be801b7519c7e33fc186
parent3510924a6de6ad44160de44051d28df87593edd3 (diff)
Check for null buffer in ColorFade
Screenshot buffers can be null for various reasons so protect against NPE when taking screenshots Test: No crash if null buffer Change-Id: Ie6c47c29227b1c1dc67aeda9a301f4bf3d904e07
-rw-r--r--services/core/java/com/android/server/display/ColorFade.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/display/ColorFade.java b/services/core/java/com/android/server/display/ColorFade.java
index ad3cd67ad65b..73f788901dc9 100644
--- a/services/core/java/com/android/server/display/ColorFade.java
+++ b/services/core/java/com/android/server/display/ColorFade.java
@@ -493,6 +493,10 @@ final class ColorFade {
== Display.COLOR_MODE_DISPLAY_P3;
SurfaceControl.ScreenshotHardwareBuffer screenshotBuffer =
mDisplayManagerInternal.systemScreenshot(mDisplayId);
+ if (screenshotBuffer == null) {
+ Slog.e(TAG, "Failed to take screenshot. Buffer is null");
+ return false;
+ }
s.attachAndQueueBufferWithColorSpace(screenshotBuffer.getHardwareBuffer(),
screenshotBuffer.getColorSpace());