Merge "Clear binder identity before calling PackageManager API" into rvc-dev

This commit is contained in:
TreeHugger Robot
2020-03-09 12:26:44 +00:00
committed by Android (Google) Code Review

View File

@@ -951,18 +951,18 @@ public class Vpn {
|| isVpnServicePreConsented(context, packageName);
}
private int getAppUid(String app, int userHandle) {
private int getAppUid(final String app, final int userHandle) {
if (VpnConfig.LEGACY_VPN.equals(app)) {
return Process.myUid();
}
PackageManager pm = mContext.getPackageManager();
int result;
try {
result = pm.getPackageUidAsUser(app, userHandle);
} catch (NameNotFoundException e) {
result = -1;
}
return result;
return Binder.withCleanCallingIdentity(() -> {
try {
return pm.getPackageUidAsUser(app, userHandle);
} catch (NameNotFoundException e) {
return -1;
}
});
}
private boolean doesPackageTargetAtLeastQ(String packageName) {