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

Commit 7ef55d34 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

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

Change-Id: Ida5c5f7997441bd331998f594f28a4ec43394f0a
parents de0a4cc4 33bb9d51
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,