diff options
| -rw-r--r-- | core/tests/overlaytests/host/src/com/android/server/om/hosttest/InstallOverlayTests.java | 3 | ||||
| -rw-r--r-- | services/core/java/com/android/server/om/OverlayManagerService.java | 8 |
2 files changed, 8 insertions, 3 deletions
diff --git a/core/tests/overlaytests/host/src/com/android/server/om/hosttest/InstallOverlayTests.java b/core/tests/overlaytests/host/src/com/android/server/om/hosttest/InstallOverlayTests.java index d898d222b8de..36c73e2e979e 100644 --- a/core/tests/overlaytests/host/src/com/android/server/om/hosttest/InstallOverlayTests.java +++ b/core/tests/overlaytests/host/src/com/android/server/om/hosttest/InstallOverlayTests.java @@ -187,6 +187,9 @@ public class InstallOverlayTests extends BaseHostJUnit4Test { shell("cmd overlay list " + APP_OVERLAY_PACKAGE_NAME).trim()); assertEquals("STATE_ENABLED", shell("cmd overlay dump state " + APP_OVERLAY_PACKAGE_NAME).trim()); + + assertEquals("STATE_ENABLED", + shell("cmd overlay dump --user current state " + APP_OVERLAY_PACKAGE_NAME).trim()); } private void delay() { diff --git a/services/core/java/com/android/server/om/OverlayManagerService.java b/services/core/java/com/android/server/om/OverlayManagerService.java index 6303ecd53dbb..8710438d76b3 100644 --- a/services/core/java/com/android/server/om/OverlayManagerService.java +++ b/services/core/java/com/android/server/om/OverlayManagerService.java @@ -1064,10 +1064,12 @@ public final class OverlayManagerService extends SystemService { return; } try { - dumpState.setUserId(Integer.parseInt(args[opti])); + final int userId = UserHandle.parseUserArg(args[opti]); + final int realUserId = handleIncomingUser(userId, "dump"); + dumpState.setUserId(realUserId); opti++; - } catch (NumberFormatException e) { - pw.println("Error: user argument is not a number: " + args[opti]); + } catch (Exception e) { + pw.println("Error: " + e.getMessage()); return; } } else if ("--verbose".equals(opt)) { |