diff options
author | Christopher Tate <ctate@google.com> | 2014-12-02 11:48:53 -0800 |
---|---|---|
committer | Bart Sears <bsears@google.com> | 2014-12-11 23:22:41 +0000 |
commit | 8965a8da5513cf31a313ecdac3506718c2813932 (patch) | |
tree | 0b29c5cf4bc699f3e1d7a834221cee7c03619504 | |
parent | c82392df7caa12836d97650c7528f216d3c2b76f (diff) | |
download | frameworks_base-8965a8da5513cf31a313ecdac3506718c2813932.zip frameworks_base-8965a8da5513cf31a313ecdac3506718c2813932.tar.gz frameworks_base-8965a8da5513cf31a313ecdac3506718c2813932.tar.bz2 |
Properly recognize repeating wakeup alarms
cherry-pick from lmp-mr1-dev
The code in place was inappropriately treating all recurring alarms
as non-wakeup for purposes of deferral. Worse, it was overriding the
"this deliverable batch of alarms includes a wakeup alarm" bookkeeping,
so could potentially cause inappropriate deferral of even standalone
wakeup alarms.
Bug 18591317
Change-Id: I2a62ed4badcaeb549c1ac4f086014aa829e45427
(cherry picked from commit 864d42eb96a9127b7d2f10ad11e709c24b4b4304)
-rw-r--r-- | services/core/java/com/android/server/AlarmManagerService.java | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/services/core/java/com/android/server/AlarmManagerService.java b/services/core/java/com/android/server/AlarmManagerService.java index 8b524dd..9d6ccfb 100644 --- a/services/core/java/com/android/server/AlarmManagerService.java +++ b/services/core/java/com/android/server/AlarmManagerService.java @@ -1425,12 +1425,9 @@ class AlarmManagerService extends SystemService { maxTriggerTime(nowELAPSED, nextElapsed, alarm.repeatInterval), alarm.repeatInterval, alarm.operation, batch.standalone, true, alarm.workSource, alarm.alarmClock, alarm.userId); + } - // For now we count this as a wakeup alarm, meaning it needs to be - // delivered immediately. In the future we should change this, but - // that required delaying when we reschedule the repeat...! - hasWakeup = false; - } else if (alarm.wakeup) { + if (alarm.wakeup) { hasWakeup = true; } |