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

Commit 1c2f3321 authored by Pinyao Ting's avatar Pinyao Ting Committed by Automerger Merge Worker
Browse files

Removes undesirable invokation of checkUriPermission am: 26bf81f9

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/13237956

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I8c07be00e5cfe82a8825e8f3835096b9e050f030
parents 0d2b2dd1 26bf81f9
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -251,11 +251,6 @@ public class SliceManagerService extends ISliceManager.Stub {
                }
            }
        }
        // Fallback to allowing uri permissions through.
        if (mContext.checkUriPermission(uri, pid, uid, Intent.FLAG_GRANT_WRITE_URI_PERMISSION)
                == PERMISSION_GRANTED) {
            return PackageManager.PERMISSION_GRANTED;
        }
        return PackageManager.PERMISSION_DENIED;
    }

+10 −1
Original line number Diff line number Diff line
@@ -75,7 +75,6 @@ public class SliceManagerServiceTest extends UiServiceTestCase {
        LocalServices.addService(UsageStatsManagerInternal.class,
                mock(UsageStatsManagerInternal.class));
        mContext.addMockSystemService(AppOpsManager.class, mock(AppOpsManager.class));
        mContext.getTestablePermissions().setPermission(TEST_URI, PERMISSION_GRANTED);

        mContextSpy = spy(mContext);
        mService = spy(new SliceManagerService(mContextSpy, TestableLooper.get(this).getLooper()));
@@ -90,6 +89,7 @@ public class SliceManagerServiceTest extends UiServiceTestCase {

    @Test
    public void testAddPinCreatesPinned() throws RemoteException {
        grantSlicePermission();
        doReturn("pkg").when(mService).getDefaultHome(anyInt());

        mService.pinSlice("pkg", TEST_URI, EMPTY_SPECS, mToken);
@@ -99,6 +99,7 @@ public class SliceManagerServiceTest extends UiServiceTestCase {

    @Test
    public void testRemovePinDestroysPinned() throws RemoteException {
        grantSlicePermission();
        doReturn("pkg").when(mService).getDefaultHome(anyInt());

        mService.pinSlice("pkg", TEST_URI, EMPTY_SPECS, mToken);
@@ -130,11 +131,13 @@ public class SliceManagerServiceTest extends UiServiceTestCase {

    @Test(expected = IllegalStateException.class)
    public void testNoPinThrow() throws Exception {
        grantSlicePermission();
        mService.getPinnedSpecs(TEST_URI, "pkg");
    }

    @Test
    public void testGetPinnedSpecs() throws Exception {
        grantSlicePermission();
        SliceSpec[] specs = new SliceSpec[] {
            new SliceSpec("Something", 1) };
        mService.pinSlice("pkg", TEST_URI, specs, mToken);
@@ -143,4 +146,10 @@ public class SliceManagerServiceTest extends UiServiceTestCase {
        assertEquals(specs, mService.getPinnedSpecs(TEST_URI, "pkg"));
    }

    private void grantSlicePermission() {
        doReturn(PERMISSION_GRANTED).when(mService).checkSlicePermission(
                eq(TEST_URI), anyString(), anyString(), anyInt(), anyInt(), any());
        doReturn(PERMISSION_GRANTED).when(mService).checkAccess(
                anyString(), eq(TEST_URI), anyInt(), anyInt());
    }
}