diff options
| author | 2019-02-19 08:55:52 +0000 | |
|---|---|---|
| committer | 2019-02-19 08:55:52 +0000 | |
| commit | d943d26c55c3c94fd3afd2453f8c61b7c239a6ef (patch) | |
| tree | c4ffaebc7625ef6f3ca71a789cde56f8ac0a16b8 | |
| parent | 03c20bbf6eebde4e1c6733957745858e6e2fe415 (diff) | |
| parent | 2a5faccf6428f2a7cf3093dcbd7d1d6a2036cca5 (diff) | |
Merge "RollbackManager: fix installedUsers null pointer exception."
| -rw-r--r-- | services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java b/services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java index ceaf829290d7..05d3c17e5c25 100644 --- a/services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java +++ b/services/core/java/com/android/server/rollback/RollbackManagerServiceImpl.java @@ -16,6 +16,7 @@ package com.android.server.rollback; +import android.annotation.NonNull; import android.app.AppOpsManager; import android.content.BroadcastReceiver; import android.content.Context; @@ -842,6 +843,7 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub { String packageName = newPackage.packageName; for (PackageRollbackInfo info : rd.packages) { if (info.getPackageName().equals(packageName)) { + info.getInstalledUsers().addAll(IntArray.wrap(installedUsers)); AppDataRollbackHelper.SnapshotAppDataResult rs = mAppDataRollbackHelper.snapshotAppData(packageName, installedUsers); info.getPendingBackups().addAll(rs.pendingBackups); @@ -874,7 +876,7 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub { * the child sessions, not the parent session. */ private boolean enableRollbackForSession(PackageInstaller.SessionInfo session, - int[] installedUsers, boolean snapshotUserData) { + @NonNull int[] installedUsers, boolean snapshotUserData) { // TODO: Don't attempt to enable rollback for split installs. final int installFlags = session.installFlags; if ((installFlags & PackageManager.INSTALL_ENABLE_ROLLBACK) == 0) { @@ -1016,7 +1018,7 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub { } if (!session.isMultiPackage()) { - if (!enableRollbackForSession(session, null, false)) { + if (!enableRollbackForSession(session, new int[0], false)) { Log.e(TAG, "Unable to enable rollback for session: " + sessionId); result.offer(false); return; @@ -1030,7 +1032,7 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub { result.offer(false); return; } - if (!enableRollbackForSession(childSession, null, false)) { + if (!enableRollbackForSession(childSession, new int[0], false)) { Log.e(TAG, "Unable to enable rollback for session: " + sessionId); result.offer(false); return; |