Files
frameworks_base/services/java/com/android/server
Joshua Bartel 9ff67a5f9b LocationManagerService: Fix race when removing LocationListener
In LocationManagerService if a LocationListener is removed while it has
a pending broadcast the wake lock held while pending broadcasts are
outstanding do not get cleared properly.

There are 2 cases of this race that are fixed:

1. locationCallbackFinished was changed to check the mReceivers HashMap
directly instead of calling getReceiver.  getReceiver would add the
ILocationListener as a new Receiver if it did not exist which caused
a receiver that was removed when it still had a broadcast pending to
be added back in a bad state when the pending broadcast completed.

2. removeUpdatesLocked was changed to decrement the pending broadcasts
when a Receiver is removed that has pending broadcasts.
2009-10-05 12:44:46 -04:00
..
2009-09-03 15:19:21 -07:00
2009-07-29 14:25:07 -07:00
2009-05-20 11:28:04 -07:00
2009-08-31 09:17:57 -07:00
2009-07-21 11:16:54 -07:00
2009-07-29 14:25:07 -07:00
2009-05-20 11:28:04 -07:00
2009-05-20 11:28:04 -07:00
2009-07-21 11:16:54 -07:00
2009-07-21 11:16:54 -07:00
2009-07-21 11:16:54 -07:00
2009-07-29 14:25:07 -07:00
2009-07-31 17:38:20 -07:00
2009-07-21 11:16:54 -07:00
2009-08-11 13:12:34 -07:00
2009-07-21 11:16:54 -07:00
2009-08-31 09:17:57 -07:00
2009-07-21 11:16:54 -07:00
2009-07-21 11:16:54 -07:00
2009-08-31 09:17:57 -07:00
2009-07-21 11:16:54 -07:00
2009-07-21 11:16:54 -07:00
2009-07-21 11:16:54 -07:00
2009-07-31 17:38:20 -07:00
2009-05-20 11:28:04 -07:00
2009-08-11 13:12:34 -07:00