summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Christopher Tate <ctate@google.com> 2020-04-01 10:09:07 -0700
committer Christopher Tate <ctate@google.com> 2020-04-17 12:07:58 -0700
commit7e701dbe8c540c8eba848ca0e8b58a62bbcbfd8e (patch)
treeb97980c601158dae7db6d2a8997c62939f277b09
parent565160c3028cae0565d5bcdbb9628221ced4e29b (diff)
Allow system processes to set near-future alarms
Bug: 151689784 Test: atest CtsAlarmManagerTestCases Test: atest FrameworksMockingServicesTests:AlarmManagerServiceTest Test: observe DHCP +2 sec alarm Merged-In: Ic987eb168fb632d77e841f33518c2d0ea650693e Change-Id: Ic987eb168fb632d77e841f33518c2d0ea650693e
-rw-r--r--services/core/java/com/android/server/AlarmManagerService.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/AlarmManagerService.java b/services/core/java/com/android/server/AlarmManagerService.java
index f71ff7b2a5e9..559f21936330 100644
--- a/services/core/java/com/android/server/AlarmManagerService.java
+++ b/services/core/java/com/android/server/AlarmManagerService.java
@@ -1735,8 +1735,9 @@ class AlarmManagerService extends SystemService {
final long nowElapsed = mInjector.getElapsedRealtime();
final long nominalTrigger = convertToElapsed(triggerAtTime, type);
- // Try to prevent spamming by making sure we aren't firing alarms in the immediate future
- final long minTrigger = nowElapsed + mConstants.MIN_FUTURITY;
+ // Try to prevent spamming by making sure apps aren't firing alarms in the immediate future
+ final long minTrigger = nowElapsed
+ + (UserHandle.isCore(callingUid) ? 0L : mConstants.MIN_FUTURITY);
final long triggerElapsed = (nominalTrigger > minTrigger) ? nominalTrigger : minTrigger;
final long maxElapsed;