commit | 0fd25c7f1797f41d5eac343ba8ee7b193ca2e8f8 | [log] [tgz] |
---|---|---|
author | jsong.song <jsong.song@samsung.corp-partner.google.com> | Thu Dec 21 02:46:24 2023 +0000 |
committer | Song Chun Fan <schfan@google.com> | Thu Dec 21 02:53:00 2023 +0000 |
tree | 791d487241d55ccce81494fe00219dd9a02eb576 | |
parent | d3faa43ee169533f1f4c1f4db47f064eea74e27b [diff] |
Remove the clone app only when the parent app is removed The clone app was removed when the app in the other profile is removed as well. Make do not delete the clone app when the app in non-parent users is deleted. Bug: 308362817 Test: atest com.android.cts.appcloning.AppCloningHostTest (cherry picked from https://partner-android-review.googlesource.com/q/commit:84fad8f32dc27aaaad49f44c19956065a5bd2d85) Change-Id: Ib153bfef29425e112231a124cb54f5cd081fb0cb
diff --git a/services/core/java/com/android/server/pm/DeletePackageHelper.java b/services/core/java/com/android/server/pm/DeletePackageHelper.java index b96b704..c920ca8 100644 --- a/services/core/java/com/android/server/pm/DeletePackageHelper.java +++ b/services/core/java/com/android/server/pm/DeletePackageHelper.java
@@ -829,6 +829,9 @@ int returnCodeOfChild; for (int childId : childUserIds) { if (childId == userId) continue; + if (mUserManagerInternal.getProfileParentId(childId) != userId) { + continue; + } // If package is not present in child then don't attempt to delete. if (!packageState.getUserStateOrDefault(childId).isInstalled()) {