Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 985053d4 authored by Ted Bauer's avatar Ted Bauer
Browse files

fix: show overrides in device_config list

Bug: 349565572
Bug: 28235890
Bug: 339084981
Test: adb shell device_config list
Change-Id: Ifd6040561aaeadc143384cba3a749c4a85fb2f15
Flag: EXEMPT refactor
parent 7cab8853
Loading
Loading
Loading
Loading
+5 −14
Original line number Diff line number Diff line
@@ -189,22 +189,13 @@ public final class DeviceConfigService extends Binder {

      public static HashMap<String, String> getAllFlags(IContentProvider provider) {
        HashMap<String, String> allFlags = new HashMap<String, String>();
        try {
            Bundle args = new Bundle();
            args.putInt(Settings.CALL_METHOD_USER_KEY,
                ActivityManager.getService().getCurrentUser().id);
            Bundle b = provider.call(new AttributionSource(Process.myUid(),
                    resolveCallingPackage(), null), Settings.AUTHORITY,
                    Settings.CALL_METHOD_LIST_CONFIG, null, args);
            if (b != null) {
                Map<String, String> flagsToValues =
                    (HashMap) b.getSerializable(Settings.NameValueTable.VALUE);
                allFlags.putAll(flagsToValues);
        for (DeviceConfig.Properties properties : DeviceConfig.getAllProperties()) {
            List<String> keys = new ArrayList<>(properties.getKeyset());
            for (String flagName : properties.getKeyset()) {
                String fullName = properties.getNamespace() + "/" + flagName;
                allFlags.put(fullName, properties.getString(flagName, null));
            }
        } catch (RemoteException e) {
            throw new RuntimeException("Failed in IPC", e);
        }

        return allFlags;
      }