Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a7e4062 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Handle user create failure correctly for lifecycle atom." into rvc-dev...

Merge "Handle user create failure correctly for lifecycle atom." into rvc-dev am: 22e9ee74 am: 33bb9d51 am: ade43c31 am: 830c3240

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11905939

Change-Id: Ibfdf285c6dcbfd17378bc8d0520735bd3b2d75a2
parents 1f715dc3 830c3240
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -3292,11 +3292,13 @@ public class UserManagerService extends IUserManager.Stub {
        final TimingsTraceAndSlog t = new TimingsTraceAndSlog();
        t.traceBegin("createUser-" + flags);
        final long sessionId = logUserCreateJourneyBegin(nextProbableUserId, userType, flags);
        UserInfo newUser = null;
        try {
            return createUserInternalUncheckedNoTracing(name, userType, flags, parentId,
            newUser = createUserInternalUncheckedNoTracing(name, userType, flags, parentId,
                        preCreate, disallowedPackages, t);
            return newUser;
        } finally {
            logUserCreateJourneyFinish(sessionId, nextProbableUserId);
            logUserCreateJourneyFinish(sessionId, nextProbableUserId, newUser != null);
            t.traceEnd();
        }
    }
@@ -3315,10 +3317,11 @@ public class UserManagerService extends IUserManager.Stub {
        return sessionId;
    }

    private void logUserCreateJourneyFinish(long sessionId, @UserIdInt int userId) {
    private void logUserCreateJourneyFinish(long sessionId, @UserIdInt int userId, boolean finish) {
        FrameworkStatsLog.write(FrameworkStatsLog.USER_LIFECYCLE_EVENT_OCCURRED, sessionId, userId,
                FrameworkStatsLog.USER_LIFECYCLE_EVENT_OCCURRED__EVENT__CREATE_USER,
                FrameworkStatsLog.USER_LIFECYCLE_EVENT_OCCURRED__STATE__FINISH);
                finish ? FrameworkStatsLog.USER_LIFECYCLE_EVENT_OCCURRED__STATE__FINISH
                       : FrameworkStatsLog.USER_LIFECYCLE_EVENT_OCCURRED__STATE__NONE);
    }

    private UserInfo createUserInternalUncheckedNoTracing(@Nullable String name,