2
0
mirror of https://gitlab.com/Nanolx/NanoDroid synced 2024-10-31 09:20:23 +00:00

npem: fix permissions not being granted

I messed up with the last fix. While that solved the case where there were
both 'granted=true' and 'granted=false' entries, it introduced a regression.

It was written with the assumption that whenever a permission is not granted,
there will be 'granted=false' entries. That assumption was not tested well
at the time, and further testing has revealed that there are also many
situations where there are no 'granted=' entries for permissions at all, not
even 'false'.

Since there is no defined spec for the output of dumpsys, we just do a
pessimistic case-by-case parsing of its output.
This commit is contained in:
FriendlyNeighborhoodShane 2022-02-02 20:14:27 +05:30
parent 4d5a9ffe75
commit 50ec605b91

View File

@ -38,7 +38,10 @@ check_package () {
}
check_permission () {
[[ $(dumpsys package ${1} | grep -Eo "^[ ]+${2}: granted=false") ]] && return 1 || return 0
perm="$(dumpsys package ${1} | grep "^ *${2}: granted=")"
echo "$perm" | grep -q "granted=false" && return 1
echo "$perm" | grep -q "granted=true" && return 0
return 1
}
grant_permission () {