Removing a test provider clears its enabled state

- Bug: 11446702

Change-Id: I56ad9235a99772079193553c0f28bd8d74b3d8e3
This commit is contained in:
Tom O'Neill
2014-03-03 17:48:35 -08:00
parent 8cf5eee342
commit 07ee5d1f1d

View File

@@ -2227,6 +2227,13 @@ public class LocationManagerService extends ILocationManager.Stub {
public void removeTestProvider(String provider) {
checkMockPermissionsSafe();
synchronized (mLock) {
// These methods can't be called after removing the test provider, so first make sure
// we don't leave anything dangling (cf b/11446702).
clearTestProviderEnabled(provider);
clearTestProviderLocation(provider);
clearTestProviderStatus(provider);
MockProvider mockProvider = mMockProviders.remove(provider);
if (mockProvider == null) {
throw new IllegalArgumentException("Provider \"" + provider + "\" unknown");