From 53a65688d5e3f15675a5d304a4497af377fa40a0 Mon Sep 17 00:00:00 2001 From: Fiona Campbell Date: Thu, 4 Mar 2021 14:37:57 +0000 Subject: [PATCH] Ensure valid brightness is sent to surface control Since brightnessState(valid range, off, invalid) is being passed in rather than brightness value(0-1 range), check that it is a valid value. Bug: 178088604 Test: manual Change-Id: Ic0a8c04d160ef318fe7a450c8c363ae5d907cbc7 --- .../com/android/server/display/LocalDisplayAdapter.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/services/core/java/com/android/server/display/LocalDisplayAdapter.java b/services/core/java/com/android/server/display/LocalDisplayAdapter.java index 3709963b7caa7..a0d93656b7f63 100644 --- a/services/core/java/com/android/server/display/LocalDisplayAdapter.java +++ b/services/core/java/com/android/server/display/LocalDisplayAdapter.java @@ -767,6 +767,12 @@ final class LocalDisplayAdapter extends DisplayAdapter { } private void setDisplayBrightness(float brightness) { + // Ensure brightnessState is valid, before processing and sending to + // surface control + if (Float.isNaN(brightness)) { + return; + } + if (DEBUG) { Slog.d(TAG, "setDisplayBrightness(" + "id=" + physicalDisplayId