summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Uhler <ruhler@google.com>2019-04-17 06:58:37 -0700
committerandroid-build-merger <android-build-merger@google.com>2019-04-17 06:58:37 -0700
commit2a4b9c5169aed2dfc1d9f901b09b12f81cd3a0f3 (patch)
tree473cd7e554625cce1b3cab6c828941154c2a620d
parent8e1ea47201f173f3bb0b12a4c35e92dfa8a5c94e (diff)
parent93a954ba54aefb45fe745ab9159ec359efd1b093 (diff)
Merge "Add -i com.android.shell when --enable-rollback is specified." into qt-dev am: 1c9cde6c1d
am: 93a954ba54 Change-Id: Id599b2004d7f6a27c8f668a6612c3545efa07c8d
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerShellCommand.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
index 4e4a0e420d86..6b804df2e068 100644
--- a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
+++ b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
@@ -2423,6 +2423,16 @@ class PackageManagerShellCommand extends ShellCommand {
sessionParams.setStaged();
break;
case "--enable-rollback":
+ if (params.installerPackageName == null) {
+ // com.android.shell has the TEST_MANAGE_ROLLBACKS
+ // permission needed to enable rollback for non-module
+ // packages, which is likely what the user wants when
+ // enabling rollback through the shell command. Set
+ // the installer to com.android.shell if no installer
+ // has been provided so that the user doesn't have to
+ // remember to set it themselves.
+ params.installerPackageName = "com.android.shell";
+ }
sessionParams.installFlags |= PackageManager.INSTALL_ENABLE_ROLLBACK;
break;
default: