Merge "Use the right flag types when creating InstallArgs" into jb-dev
This commit is contained in:
@ -3118,8 +3118,9 @@ public class PackageManagerService extends IPackageManager.Stub {
|
||||
+ "reverting from " + ps.codePathString
|
||||
+ ": new version " + pkg.mVersionCode
|
||||
+ " better than installed " + ps.versionCode);
|
||||
InstallArgs args = createInstallArgs(ps.pkgFlags, ps.codePathString,
|
||||
ps.resourcePathString, ps.nativeLibraryPathString);
|
||||
|
||||
InstallArgs args = createInstallArgs(packageFlagsToInstallFlags(ps),
|
||||
ps.codePathString, ps.resourcePathString, ps.nativeLibraryPathString);
|
||||
synchronized (mInstaller) {
|
||||
args.cleanUpResourcesLI();
|
||||
}
|
||||
@ -3174,8 +3175,8 @@ public class PackageManagerService extends IPackageManager.Stub {
|
||||
Slog.w(TAG, "Package " + ps.name + " at " + scanFile + "reverting from "
|
||||
+ ps.codePathString + ": new version " + pkg.mVersionCode
|
||||
+ " better than installed " + ps.versionCode);
|
||||
InstallArgs args = createInstallArgs(ps.pkgFlags, ps.codePathString,
|
||||
ps.resourcePathString, ps.nativeLibraryPathString);
|
||||
InstallArgs args = createInstallArgs(packageFlagsToInstallFlags(ps),
|
||||
ps.codePathString, ps.resourcePathString, ps.nativeLibraryPathString);
|
||||
synchronized (mInstaller) {
|
||||
args.cleanUpResourcesLI();
|
||||
}
|
||||
@ -7252,6 +7253,11 @@ public class PackageManagerService extends IPackageManager.Stub {
|
||||
return (pkg.applicationInfo.flags & ApplicationInfo.FLAG_FORWARD_LOCK) != 0;
|
||||
}
|
||||
|
||||
|
||||
private boolean isForwardLocked(PackageSetting ps) {
|
||||
return (ps.pkgFlags & ApplicationInfo.FLAG_FORWARD_LOCK) != 0;
|
||||
}
|
||||
|
||||
private static boolean isExternal(PackageParser.Package pkg) {
|
||||
return (pkg.applicationInfo.flags & ApplicationInfo.FLAG_EXTERNAL_STORAGE) != 0;
|
||||
}
|
||||
@ -7276,6 +7282,17 @@ public class PackageManagerService extends IPackageManager.Stub {
|
||||
return (pkg.applicationInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0;
|
||||
}
|
||||
|
||||
private int packageFlagsToInstallFlags(PackageSetting ps) {
|
||||
int installFlags = 0;
|
||||
if (isExternal(ps)) {
|
||||
installFlags |= PackageManager.INSTALL_EXTERNAL;
|
||||
}
|
||||
if (isForwardLocked(ps)) {
|
||||
installFlags |= PackageManager.INSTALL_FORWARD_LOCK;
|
||||
}
|
||||
return installFlags;
|
||||
}
|
||||
|
||||
private void deleteTempPackageFiles() {
|
||||
FilenameFilter filter = new FilenameFilter() {
|
||||
public boolean accept(File dir, String name) {
|
||||
|
Reference in New Issue
Block a user