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

Commit 4a25d72e authored by Tyler Gunn's avatar Tyler Gunn Committed by android-build-merger
Browse files

Merge "Prevent INTERACT_ACROSS_USERS exception in DefaultDialerManager." into oc-mr1-dev

am: dc79e248

Change-Id: I6bc7419ba260050281d83e33f7f328ec5ccb3cd8
parents 86baa82d dc79e248
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -170,7 +170,7 @@ public class DefaultDialerManager {

        final Intent dialIntentWithTelScheme = new Intent(Intent.ACTION_DIAL);
        dialIntentWithTelScheme.setData(Uri.fromParts(PhoneAccount.SCHEME_TEL, "", null));
        return filterByIntent(context, packageNames, dialIntentWithTelScheme);
        return filterByIntent(context, packageNames, dialIntentWithTelScheme, userId);
    }

    public static List<String> getInstalledDialerApplications(Context context) {
@@ -204,17 +204,18 @@ public class DefaultDialerManager {
     *
     * @param context A valid context
     * @param packageNames List of package names to filter.
     * @param userId The UserId
     * @return The filtered list.
     */
    private static List<String> filterByIntent(Context context, List<String> packageNames,
            Intent intent) {
            Intent intent, int userId) {
        if (packageNames == null || packageNames.isEmpty()) {
            return new ArrayList<>();
        }

        final List<String> result = new ArrayList<>();
        final List<ResolveInfo> resolveInfoList = context.getPackageManager()
                .queryIntentActivities(intent, 0);
                .queryIntentActivitiesAsUser(intent, 0, userId);
        final int length = resolveInfoList.size();
        for (int i = 0; i < length; i++) {
            final ActivityInfo info = resolveInfoList.get(i).activityInfo;