From 9c295d41d3cf473afbb18a3afaf38dbd82282cca Mon Sep 17 00:00:00 2001 From: Pavel Grafov Date: Tue, 26 Mar 2019 19:42:08 +0000 Subject: [PATCH] Fix NPE when querying serial number of a partial user. Assuming that UserData.userInfo is never null (?) exists() check seems unnecessary - in this case getUserInfoLU will just return null. Bug: 127791661 Test: build, boot Change-Id: Ieb10dea96269a92b12bdc084116b1f7633a7c5c5 --- .../core/java/com/android/server/pm/UserManagerService.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/services/core/java/com/android/server/pm/UserManagerService.java b/services/core/java/com/android/server/pm/UserManagerService.java index 316a9c0d73a48..204f186f9e130 100644 --- a/services/core/java/com/android/server/pm/UserManagerService.java +++ b/services/core/java/com/android/server/pm/UserManagerService.java @@ -3372,15 +3372,15 @@ public class UserManagerService extends IUserManager.Stub { @Override public int getUserSerialNumber(int userHandle) { synchronized (mUsersLock) { - if (!exists(userHandle)) return -1; - return getUserInfoLU(userHandle).serialNumber; + final UserInfo userInfo = getUserInfoLU(userHandle); + return userInfo != null ? userInfo.serialNumber : -1; } } @Override public boolean isUserNameSet(int userHandle) { synchronized (mUsersLock) { - UserInfo userInfo = getUserInfoLU(userHandle); + final UserInfo userInfo = getUserInfoLU(userHandle); return userInfo != null && userInfo.name != null; } }