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

Commit 830c3240 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

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

Change-Id: I0c34508510dd78cb66b0c91c113e02dd8451de04
parents 694b32ce ade43c31
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -3291,11 +3291,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();
        }
    }
@@ -3314,10 +3316,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,