From 7250016447859c346398914b8f66e4c88de7c9e3 Mon Sep 17 00:00:00 2001 From: Ricky Wai Date: Tue, 7 Jun 2016 16:54:25 +0100 Subject: [PATCH] Make work challenge settings work even work profile is not enabled yet Bug: 29090660 Change-Id: I21996700f1ee451e8420f3f257c6ed51feea4ecb --- src/com/android/settings/Utils.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java index ebc0b1c48b1..d3098672702 100644 --- a/src/com/android/settings/Utils.java +++ b/src/com/android/settings/Utils.java @@ -90,6 +90,7 @@ import android.view.animation.AnimationUtils; import android.widget.ListView; import android.widget.TabWidget; import com.android.internal.app.UnlaunchableAppActivity; +import com.android.internal.util.ArrayUtils; import com.android.internal.util.UserIcons; import java.io.IOException; @@ -1024,12 +1025,13 @@ public final class Utils extends com.android.settingslib.Utils { * @throws SecurityException if the given userId does not belong to the current user group. */ public static int enforceSameOwner(Context context, int userId) { - UserManager um = getUserManager(context); - if (!um.getUserProfiles().contains(new UserHandle(userId))) { - throw new SecurityException("Given user id " + userId + " does not belong to user " - + UserHandle.myUserId()); + final UserManager um = getUserManager(context); + final int[] profileIds = um.getProfileIdsWithDisabled(UserHandle.myUserId()); + if (ArrayUtils.contains(profileIds, userId)) { + return userId; } - return userId; + throw new SecurityException("Given user id " + userId + " does not belong to user " + + UserHandle.myUserId()); } /**