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

Commit 852dd3af authored by Joel Galenson's avatar Joel Galenson
Browse files

Fix crash in permission filter dialog when there are no usages.

Test: Load permission filter dialog with and without usages.
Change-Id: Iadcc02dc946ac7ed34b7fd5ea1c5d42c1124d591
parent bc678fde
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -122,7 +122,7 @@ public class PermissionUsageFragment extends SettingsWithLargeHeader implements
    private static final int MAXIMUM_NUM_BARS = 4;

    private @NonNull PermissionUsages mPermissionUsages;
    private @Nullable List<AppPermissionUsage> mAppPermissionUsages;
    private @Nullable List<AppPermissionUsage> mAppPermissionUsages = new ArrayList<>();

    private Collator mCollator;

@@ -138,7 +138,7 @@ public class PermissionUsageFragment extends SettingsWithLargeHeader implements
    private MenuItem mSortByApp;
    private MenuItem mSortByTime;

    private ArrayMap<String, Integer> mGroupAppCounts;
    private ArrayMap<String, Integer> mGroupAppCounts = new ArrayMap<>();

    private boolean mFinishedInitialLoad;

@@ -385,7 +385,7 @@ public class PermissionUsageFragment extends SettingsWithLargeHeader implements
        long startTime = (timeFilterItem == null ? 0 : (curTime - timeFilterItem.getTime()));

        List<Pair<AppPermissionUsage, GroupUsage>> usages = new ArrayList<>();
        mGroupAppCounts = new ArrayMap<>();
        mGroupAppCounts.clear();
        ArrayList<PermissionApp> permApps = new ArrayList<>();
        int numApps = mAppPermissionUsages.size();
        for (int appNum = 0; appNum < numApps; appNum++) {
@@ -836,7 +836,11 @@ public class PermissionUsageFragment extends SettingsWithLargeHeader implements
        int[] groupAccessCounts = new int[groupNames.length];
        groupNames[0] = null;
        groupLabels[0] = context.getString(R.string.permission_usage_any_permission);
        groupAccessCounts[0] = mGroupAppCounts.get(null);
        Integer allAccesses = mGroupAppCounts.get(null);
        if (allAccesses == null) {
            allAccesses = 0;
        }
        groupAccessCounts[0] = allAccesses;
        int selection = 0;
        int numGroups = groups.size();
        for (int i = 0; i < numGroups; i++) {