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

Commit 115ed1bc authored by Pinyao Ting's avatar Pinyao Ting
Browse files

Make sure a pinned slice with given uri exists before calling unpin.

Bug: 110411972
Change-Id: I7800e917d3c376d9e7ee54648c7771896fee2a0d
Test: Manual
parent 69657278
Loading
Loading
Loading
Loading
+7 −2
Original line number Original line Diff line number Diff line
@@ -180,9 +180,14 @@ public class SliceManagerService extends ISliceManager.Stub {
        verifyCaller(pkg);
        verifyCaller(pkg);
        enforceAccess(pkg, uri);
        enforceAccess(pkg, uri);
        uri = maybeAddUserId(uri, Binder.getCallingUserHandle().getIdentifier());
        uri = maybeAddUserId(uri, Binder.getCallingUserHandle().getIdentifier());
        if (getPinnedSlice(uri).unpin(pkg, token)) {
        try {
            PinnedSliceState slice = getPinnedSlice(uri);
            if (slice != null && slice.unpin(pkg, token)) {
                removePinnedSlice(uri);
                removePinnedSlice(uri);
            }
            }
        } catch (IllegalStateException exception) {
            Slog.w(TAG, exception.getMessage());
        }
    }
    }


    @Override
    @Override