Merge "Allow holders of INSTALL_PACKAGE_UPDATES permission to update APEXes" into sc-dev
This commit is contained in:
@@ -626,7 +626,14 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
boolean isApex = (params.installFlags & PackageManager.INSTALL_APEX) != 0;
|
boolean isApex = (params.installFlags & PackageManager.INSTALL_APEX) != 0;
|
||||||
if (params.isStaged || isApex) {
|
if (isApex) {
|
||||||
|
if (mContext.checkCallingOrSelfPermission(Manifest.permission.INSTALL_PACKAGE_UPDATES)
|
||||||
|
== PackageManager.PERMISSION_DENIED
|
||||||
|
&& mContext.checkCallingOrSelfPermission(Manifest.permission.INSTALL_PACKAGES)
|
||||||
|
== PackageManager.PERMISSION_DENIED) {
|
||||||
|
throw new SecurityException("Not allowed to perform APEX updates");
|
||||||
|
}
|
||||||
|
} else if (params.isStaged) {
|
||||||
mContext.enforceCallingOrSelfPermission(Manifest.permission.INSTALL_PACKAGES, TAG);
|
mContext.enforceCallingOrSelfPermission(Manifest.permission.INSTALL_PACKAGES, TAG);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user