diff options
author | Amith Yamasani <yamasani@google.com> | 2012-04-20 15:19:35 -0700 |
---|---|---|
committer | Amith Yamasani <yamasani@google.com> | 2012-04-20 15:19:35 -0700 |
commit | 7ea3e7df1f1ff5dde8ffb42fa179beef679f40ea (patch) | |
tree | 8832e2c53892e4929a74a13641f543ac7ae877f2 | |
parent | 5b086eb5438b5048bd3fbf4e2ed9390ec10245b3 (diff) | |
download | frameworks_base-7ea3e7df1f1ff5dde8ffb42fa179beef679f40ea.zip frameworks_base-7ea3e7df1f1ff5dde8ffb42fa179beef679f40ea.tar.gz frameworks_base-7ea3e7df1f1ff5dde8ffb42fa179beef679f40ea.tar.bz2 |
Fix dumpsys package.
Was bailing out due to insufficient permissions to query users.
Bug: 6374050
Change-Id: Ic4a4ab32e2efb4d1fc1f1607fd304f99d5382743
-rw-r--r-- | services/java/com/android/server/pm/Settings.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/services/java/com/android/server/pm/Settings.java b/services/java/com/android/server/pm/Settings.java index 35b6bde..d015278 100644 --- a/services/java/com/android/server/pm/Settings.java +++ b/services/java/com/android/server/pm/Settings.java @@ -2300,12 +2300,15 @@ final class Settings { } private List<UserInfo> getAllUsers() { + long id = Binder.clearCallingIdentity(); try { return AppGlobals.getPackageManager().getUsers(); } catch (RemoteException re) { // Local to system process, shouldn't happen } catch (NullPointerException npe) { // packagemanager not yet initialized + } finally { + Binder.restoreCallingIdentity(id); } return null; } @@ -2347,6 +2350,7 @@ final class Settings { final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); final Date date = new Date(); boolean printedSomething = false; + List<UserInfo> users = getAllUsers(); for (final PackageSetting ps : mPackages.values()) { if (packageName != null && !packageName.equals(ps.realName) && !packageName.equals(ps.name)) { @@ -2447,7 +2451,6 @@ final class Settings { pw.print(" haveGids="); pw.println(ps.haveGids); pw.print(" pkgFlags=0x"); pw.print(Integer.toHexString(ps.pkgFlags)); pw.print(" installStatus="); pw.print(ps.installStatus); - List<UserInfo> users = getAllUsers(); for (UserInfo user : users) { pw.print(" User "); pw.print(user.id); pw.print(": "); pw.print(" stopped="); |