Set the reason for screen-off before usage.

An occasional call sequence through updateLightsLocked ended up storing
the old screen-off reason rather than the current screen-off reason.
This caused the Keyguard screen to be bypassed when turning back on. By
saving the power-off reason in mScreenOffReason prior to calling
updateLightsLocked we eliminate this problem.

The offending calling sequence was:
  PowerManagerService.setPowerState(..., reason) => updateLightsLocked
  => animateTo => screenOffFinishedAminatingLocked(mScreenOffReason)
  => sendNotificationLocked.

Change-Id: I8ee0b3226f94af7ff7e7b7b0bf54e47fd0c03631
1 file changed