diff options
| author | 2023-05-17 01:30:20 -0700 | |
|---|---|---|
| committer | 2023-05-18 21:42:57 +0000 | |
| commit | 0e1ebd84e27f5d4fa8bc6577705293251bcbac4f (patch) | |
| tree | e10b7152bfb06335214ba4efffa4e5ff6f3c802d /api/api_test.go | |
| parent | 3059d911ec37ae9fd1a93ee0ed2f1646f1efad55 (diff) | |
Preserve flags for non-runtime permissions upon package update.
PermissionManagerServiceImpl.restorePermissionState() creates a new
UID permission state for non-shared-UID packages that have been
updated (i.e. replaced), however the existing logic for non-runtime
permission never carried over the flags from the old state. This
wasn't an issue for much older platforms because permission flags
weren't used for non-runtime permissions, however since we are
starting to use them for role protected permissions (ROLE_GRANTED) and
app op permissions (USER_SET), we do need to preserver the permission
flags.
This change merges the logic for granting and revoking a non-runtime
permission in restorePermissionState() into a single if branch, and
appends the logic to copy the flag from the old state in that branch.
Bug: 283006437
Test: PermissionFlagsTest#nonRuntimePermissionFlagsPreservedAfterReinstall
Change-Id: Iea3c66710e7d28c6fc730b1939da64f1172b08db
Merged-In: Iea3c66710e7d28c6fc730b1939da64f1172b08db
Diffstat (limited to 'api/api_test.go')
0 files changed, 0 insertions, 0 deletions