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

Commit 84249ed3 authored by Patrick Baumann's avatar Patrick Baumann
Browse files

Treat mimegroup as wildcard for app enumeration

This change treats any filter with a mimegroup as if it matches all or
no mime types when matching for the purpose of app enumeration.

Fixes: 155379839
Test: atest IntentFilterTest
Change-Id: I358872082524a4001179bb145053d006622898a7
parent 97980133
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -1581,12 +1581,13 @@ public class IntentFilter implements Parcelable {
     * @param wildcardSupported if true, will allow parameters to use wildcards
     */
    private int matchData(String type, String scheme, Uri data, boolean wildcardSupported) {
        final ArrayList<String> types = mDataTypes;
        final boolean wildcardWithMimegroups = wildcardSupported && countMimeGroups() != 0;
        final List<String> types = mDataTypes;
        final ArrayList<String> schemes = mDataSchemes;

        int match = MATCH_CATEGORY_EMPTY;

        if (types == null && schemes == null) {
        if (!wildcardWithMimegroups && types == null && schemes == null) {
            return ((type == null && data == null)
                ? (MATCH_CATEGORY_EMPTY+MATCH_ADJUSTMENT_NORMAL) : NO_MATCH_DATA);
        }
@@ -1641,7 +1642,9 @@ public class IntentFilter implements Parcelable {
            }
        }

        if (types != null) {
        if (wildcardWithMimegroups) {
            return MATCH_CATEGORY_TYPE;
        } else if (types != null) {
            if (findMimeType(type)) {
                match = MATCH_CATEGORY_TYPE;
            } else {