summaryrefslogtreecommitdiff
path: root/libs/androidfw/ObbFile.cpp
diff options
context:
space:
mode:
author Hai Zhang <zhanghai@google.com> 2023-05-17 01:30:20 -0700
committer Hai Zhang <zhanghai@google.com> 2023-05-17 09:29:01 +0000
commit75d59e2c837fe80573d005d614b5605f049d670b (patch)
tree051d34a8a26889b910a6baacdb3f4ca92166d66b /libs/androidfw/ObbFile.cpp
parent805f89f85afe7c2e2b08b7a6f053f7b086a9fa7d (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 Bug: 282997218 Test: PermissionFlagsTest#nonRuntimePermissionFlagsPreservedAfterReinstall Change-Id: Iea3c66710e7d28c6fc730b1939da64f1172b08db
Diffstat (limited to 'libs/androidfw/ObbFile.cpp')
0 files changed, 0 insertions, 0 deletions