diff options
| -rw-r--r-- | services/core/java/com/android/server/pm/PackageManagerService.java | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 435f48c28a84..4819de5a84fb 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -13419,14 +13419,17 @@ public class PackageManagerService extends IPackageManager.Stub { final File codeFile = new File(Environment.getDataAppDirectory(volumeUuid), move.dataAppName); Slog.d(TAG, "Cleaning up " + move.packageName + " on " + volumeUuid); + final int[] userIds = sUserManager.getUserIds(); synchronized (mInstallLock) { // Clean up both app data and code // All package moves are frozen until finished - try { - mInstaller.destroyAppData(volumeUuid, move.packageName, UserHandle.USER_ALL, - StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE, 0); - } catch (InstallerException e) { - Slog.w(TAG, String.valueOf(e)); + for (int userId : userIds) { + try { + mInstaller.destroyAppData(volumeUuid, move.packageName, userId, + StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE, 0); + } catch (InstallerException e) { + Slog.w(TAG, String.valueOf(e)); + } } removeCodePathLI(codeFile); } |