diff options
Diffstat (limited to 'services/java')
-rw-r--r-- | services/java/com/android/server/LocationManagerService.java | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/services/java/com/android/server/LocationManagerService.java b/services/java/com/android/server/LocationManagerService.java index 1204293..5238c58 100644 --- a/services/java/com/android/server/LocationManagerService.java +++ b/services/java/com/android/server/LocationManagerService.java @@ -1831,8 +1831,12 @@ public class LocationManagerService extends ILocationManager.Stub { mWakeLockAcquireTime = SystemClock.elapsedRealtime(); log("Acquired wakelock"); - mNetworkLocationProvider.wakeLockAcquired(); - mGpsLocationProvider.wakeLockAcquired(); + if (mNetworkLocationProvider != null) { + mNetworkLocationProvider.wakeLockAcquired(); + } + if (mGpsLocationProvider != null) { + mGpsLocationProvider.wakeLockAcquired(); + } } private void releaseWakeLockLocked() { @@ -1846,8 +1850,12 @@ public class LocationManagerService extends ILocationManager.Stub { } private void releaseWakeLockXLocked() { - mNetworkLocationProvider.wakeLockReleased(); - mGpsLocationProvider.wakeLockReleased(); + if (mNetworkLocationProvider != null) { + mNetworkLocationProvider.wakeLockReleased(); + } + if (mGpsLocationProvider != null) { + mGpsLocationProvider.wakeLockReleased(); + } // Release wake lock mWakeLockAcquireTime = 0; |