From 640666fcfd4f40ba69dbe459adea7b31407209ac Mon Sep 17 00:00:00 2001 From: Michael Wright Date: Tue, 6 Jun 2017 22:01:20 +0100 Subject: [PATCH] Actually wait until the display is ready. When this was rewritten to only wait for display state changes and not brightness changes, it forgot to take into account whether a change was already in flight when reporting whether a change was happening. Fix that so the display appropriately reports when it's ready and when it's blocked. Bug: 32559368 Test: Take systrace of device wakeup, see it actually waits until the display is actually ready Change-Id: Ie3bd5c48d109a0fb2628ccc8f67bb52be51fad5c --- .../java/com/android/server/display/DisplayPowerState.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/display/DisplayPowerState.java b/services/core/java/com/android/server/display/DisplayPowerState.java index 98625161a7067..e2fd0acd3887d 100644 --- a/services/core/java/com/android/server/display/DisplayPowerState.java +++ b/services/core/java/com/android/server/display/DisplayPowerState.java @@ -369,8 +369,8 @@ final class DisplayPowerState { mPendingBacklight = backlight; boolean changeInProgress = mStateChangeInProgress || mBacklightChangeInProgress; - mStateChangeInProgress = stateChanged; - mBacklightChangeInProgress = backlightChanged; + mStateChangeInProgress = stateChanged || mStateChangeInProgress; + mBacklightChangeInProgress = backlightChanged || mBacklightChangeInProgress; if (!changeInProgress) { mLock.notifyAll();