Merge "Prevent recomputeDisableFlags from clobbering the system disable flags" into sc-v2-dev

This commit is contained in:
Winson Chung
2021-11-22 17:27:31 +00:00
committed by Android (Google) Code Review

View File

@@ -513,10 +513,14 @@ public class CommandQueue extends IStatusBar.Stub implements
* @param animate {@code true} to show animations. * @param animate {@code true} to show animations.
*/ */
public void recomputeDisableFlags(int displayId, boolean animate) { public void recomputeDisableFlags(int displayId, boolean animate) {
// This must update holding the lock otherwise it can clobber the disabled flags set on the
// binder thread from the disable() call
synchronized (mLock) {
int disabled1 = getDisabled1(displayId); int disabled1 = getDisabled1(displayId);
int disabled2 = getDisabled2(displayId); int disabled2 = getDisabled2(displayId);
disable(displayId, disabled1, disabled2, animate); disable(displayId, disabled1, disabled2, animate);
} }
}
private void setDisabled(int displayId, int disabled1, int disabled2) { private void setDisabled(int displayId, int disabled1, int disabled2) {
mDisplayDisabled.put(displayId, new Pair<>(disabled1, disabled2)); mDisplayDisabled.put(displayId, new Pair<>(disabled1, disabled2));