diff options
| author | 2020-02-19 19:54:34 +0000 | |
|---|---|---|
| committer | 2020-02-19 19:54:34 +0000 | |
| commit | f436164eb8cdd339cd88a05c446fda167d3dceed (patch) | |
| tree | 886e51a8157c6b386fa2e20f33a793676e97417c | |
| parent | 6dfeeb710e585b9f9cc2e9ce89d2b64b29901187 (diff) | |
| parent | 10e88cc1508091af8c33933a5d4d357f0f994f30 (diff) | |
Merge "Overrides permission check in tests to fix failing unit tests"
| -rw-r--r-- | services/core/java/com/android/server/pm/LauncherAppsService.java | 14 | ||||
| -rw-r--r-- | services/tests/servicestests/src/com/android/server/pm/BaseShortcutManagerTest.java | 5 |
2 files changed, 16 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/pm/LauncherAppsService.java b/services/core/java/com/android/server/pm/LauncherAppsService.java index 3a162173a59f..09e3febbb050 100644 --- a/services/core/java/com/android/server/pm/LauncherAppsService.java +++ b/services/core/java/com/android/server/pm/LauncherAppsService.java @@ -16,7 +16,6 @@ package com.android.server.pm; -import android.Manifest.permission; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.UserIdInt; @@ -307,8 +306,8 @@ public class LauncherAppsService extends SystemService { final int callingUserId = injectCallingUserId(); if (targetUserId == callingUserId) return true; - if (mContext.checkCallingOrSelfPermission(permission.INTERACT_ACROSS_USERS_FULL) - == PackageManager.PERMISSION_GRANTED) { + if (injectHasInteractAcrossUsersFullPermission(injectBinderCallingPid(), + injectBinderCallingUid())) { return true; } @@ -684,6 +683,15 @@ public class LauncherAppsService extends SystemService { callingPid, callingUid) == PackageManager.PERMISSION_GRANTED; } + /** + * Returns true if the caller has the "INTERACT_ACROSS_USERS_FULL" permission. + */ + @VisibleForTesting + boolean injectHasInteractAcrossUsersFullPermission(int callingPid, int callingUid) { + return mContext.checkPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL, + callingPid, callingUid) == PackageManager.PERMISSION_GRANTED; + } + @Override public ParceledListSlice getShortcuts(String callingPackage, long changedSince, String packageName, List shortcutIds, List<LocusId> locusIds, diff --git a/services/tests/servicestests/src/com/android/server/pm/BaseShortcutManagerTest.java b/services/tests/servicestests/src/com/android/server/pm/BaseShortcutManagerTest.java index df2b3efeb94c..6c769485f6ad 100644 --- a/services/tests/servicestests/src/com/android/server/pm/BaseShortcutManagerTest.java +++ b/services/tests/servicestests/src/com/android/server/pm/BaseShortcutManagerTest.java @@ -562,6 +562,11 @@ public abstract class BaseShortcutManagerTest extends InstrumentationTestCase { boolean injectHasAccessShortcutsPermission(int callingPid, int callingUid) { return true; } + + @Override + boolean injectHasInteractAcrossUsersFullPermission(int callingPid, int callingUid) { + return false; + } } protected class LauncherAppsTestable extends LauncherApps { |