From 6bd5c32a3e2a7e02f7e23f26b2db026efcf62550 Mon Sep 17 00:00:00 2001 From: Yasin Kilicdere Date: Tue, 17 May 2022 18:42:11 +0100 Subject: [PATCH] Puts dispatchUserAdded inside Binder.withCleanCallingIdentity dispatchUserAdded eventually calls handleIncomingUser. And it requires callingUid to have INTERACT_ACROSS_USERS permission. That was failing some tests for auto. This CL makes sure that method is called with clean calling identity. Bug: 232945806 Test: atest CtsMultiUserTestCases:android.multiuser.cts.UserManagerTest#testCreateUser_withNewUserRequest_shouldCreateUserWithCorrectProperties Change-Id: I2d0984c5166dd650f81a3a72696cece8054da26a --- .../core/java/com/android/server/pm/UserManagerService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/pm/UserManagerService.java b/services/core/java/com/android/server/pm/UserManagerService.java index fcdab88a4c9b9..9de485b284793 100644 --- a/services/core/java/com/android/server/pm/UserManagerService.java +++ b/services/core/java/com/android/server/pm/UserManagerService.java @@ -4209,8 +4209,8 @@ public class UserManagerService extends IUserManager.Stub { updateUserIds(); Binder.withCleanCallingIdentity(() -> { mPm.onNewUserCreated(preCreatedUser.id, /* convertedFromPreCreated= */ true); + dispatchUserAdded(preCreatedUser, token); }); - dispatchUserAdded(preCreatedUser, token); return preCreatedUser; }