Fix inconsistent permission check in LocationManager.

Ensures there is a consistent permission check between the LocationManager APIs:
- getProviders(Criteria, boolean)
- getAllProviders()

Bug: 24776299
Test: ran LocationManagerTest#testGetProviders from CTS
Change-Id: Ia0d5a510a6cdb34df1f53bb0b3885aa295ba51ae
diff --git a/services/core/java/com/android/server/LocationManagerService.java b/services/core/java/com/android/server/LocationManagerService.java
index 966e553..340d672 100644
--- a/services/core/java/com/android/server/LocationManagerService.java
+++ b/services/core/java/com/android/server/LocationManagerService.java
@@ -1542,18 +1542,7 @@
      */
     @Override
     public List<String> getAllProviders() {
-        ArrayList<String> out;
-        synchronized (mLock) {
-            out = new ArrayList<>(mProviders.size());
-            for (LocationProviderInterface provider : mProviders) {
-                String name = provider.getName();
-                if (LocationManager.FUSED_PROVIDER.equals(name)) {
-                    continue;
-                }
-                out.add(name);
-            }
-        }
-
+        List<String> out = getProviders(null /*criteria*/, false /*enabledOnly*/);
         if (D) Log.d(TAG, "getAllProviders()=" + out);
         return out;
     }