diff options
author | Victoria Lease <violets@google.com> | 2012-12-04 15:04:43 -0800 |
---|---|---|
committer | Victoria Lease <violets@google.com> | 2012-12-04 15:04:43 -0800 |
commit | 8b38b29b5213c429d1e9802d02549b5638f40706 (patch) | |
tree | ffdac8e6ae2728b65fb33c7e378c51001d005855 /services/java/com/android/server/LocationManagerService.java | |
parent | 39ec1ec187c3b27f2819aaf5a3a47819af56e44d (diff) |
Notify provider when disposing last UpdateRecord
Location providers were not being notified of the change in status
when the last UpdateRecord was removed due to numUpdates exhaustion
or request expiry. Oops! Enjoy some free battery life!
Bug: 7611837
Change-Id: Id48151eb7de40164258cde7da220a4d6bb34b89a
Diffstat (limited to 'services/java/com/android/server/LocationManagerService.java')
-rw-r--r-- | services/java/com/android/server/LocationManagerService.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/java/com/android/server/LocationManagerService.java b/services/java/com/android/server/LocationManagerService.java index 4bd7abcb9076..f5596d62cee1 100644 --- a/services/java/com/android/server/LocationManagerService.java +++ b/services/java/com/android/server/LocationManagerService.java @@ -1711,6 +1711,10 @@ public class LocationManagerService extends ILocationManager.Stub implements Run r.disposeLocked(true); } } + // let the provider know if we just disposed its last update record + if (records.size() == 0) { + applyRequirementsLocked(provider); + } } private class LocationWorkerHandler extends Handler { |