Loading services/core/java/com/android/server/pm/PackageManagerService.java +23 −21 Original line number Diff line number Diff line Loading @@ -20228,10 +20228,8 @@ public class PackageManagerService extends IPackageManager.Stub true /* requireFullPermission */, false /* checkShell */, "clear application data"); final PackageSetting ps = mSettings.getPackageLPr(packageName); if (ps != null && filterAppAccessLPr(ps, callingUid, userId)) { return; } if (mProtectedPackages.isPackageDataProtected(userId, packageName)) { final boolean filterApp = (ps != null && filterAppAccessLPr(ps, callingUid, userId)); if (!filterApp && mProtectedPackages.isPackageDataProtected(userId, packageName)) { throw new SecurityException("Cannot clear data for a protected package: " + packageName); } Loading @@ -20240,6 +20238,7 @@ public class PackageManagerService extends IPackageManager.Stub public void run() { mHandler.removeCallbacks(this); final boolean succeeded; if (!filterApp) { try (PackageFreezer freezer = freezePackage(packageName, "clearApplicationUserData")) { synchronized (mInstallLock) { Loading @@ -20259,6 +20258,9 @@ public class PackageManagerService extends IPackageManager.Stub dsm.checkMemory(); } } } else { succeeded = false; } if (observer != null) { try { observer.onRemoveCompleted(packageName, succeeded); Loading
services/core/java/com/android/server/pm/PackageManagerService.java +23 −21 Original line number Diff line number Diff line Loading @@ -20228,10 +20228,8 @@ public class PackageManagerService extends IPackageManager.Stub true /* requireFullPermission */, false /* checkShell */, "clear application data"); final PackageSetting ps = mSettings.getPackageLPr(packageName); if (ps != null && filterAppAccessLPr(ps, callingUid, userId)) { return; } if (mProtectedPackages.isPackageDataProtected(userId, packageName)) { final boolean filterApp = (ps != null && filterAppAccessLPr(ps, callingUid, userId)); if (!filterApp && mProtectedPackages.isPackageDataProtected(userId, packageName)) { throw new SecurityException("Cannot clear data for a protected package: " + packageName); } Loading @@ -20240,6 +20238,7 @@ public class PackageManagerService extends IPackageManager.Stub public void run() { mHandler.removeCallbacks(this); final boolean succeeded; if (!filterApp) { try (PackageFreezer freezer = freezePackage(packageName, "clearApplicationUserData")) { synchronized (mInstallLock) { Loading @@ -20259,6 +20258,9 @@ public class PackageManagerService extends IPackageManager.Stub dsm.checkMemory(); } } } else { succeeded = false; } if (observer != null) { try { observer.onRemoveCompleted(packageName, succeeded);