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

Commit 017c695c authored by Sally Yuen's avatar Sally Yuen Committed by Android (Google) Code Review
Browse files

Merge "Use volatile keyword instead of lock" into tm-dev

parents 5e5efacd 5660d2e7
Loading
Loading
Loading
Loading
+24 −30
Original line number Diff line number Diff line
@@ -50,7 +50,7 @@ public class AccessibilityTraceManager implements AccessibilityTrace {
    private final AccessibilityManagerService mService;
    private final Object mA11yMSLock;

    private long mEnabledLoggingFlags;
    private volatile long mEnabledLoggingFlags;

    private static AccessibilityTraceManager sInstance = null;

@@ -77,22 +77,17 @@ public class AccessibilityTraceManager implements AccessibilityTrace {

    @Override
    public boolean isA11yTracingEnabled() {
        synchronized (mA11yMSLock) {
        return mEnabledLoggingFlags != FLAGS_LOGGING_NONE;
    }
    }

    @Override
    public boolean isA11yTracingEnabledForTypes(long typeIdFlags) {
        synchronized (mA11yMSLock) {
        return ((typeIdFlags & mEnabledLoggingFlags) != FLAGS_LOGGING_NONE);
    }
    }

    @Override
    public int getTraceStateForAccessibilityManagerClientState() {
        int state = 0x0;
        synchronized (mA11yMSLock) {
        if (isA11yTracingEnabledForTypes(FLAGS_ACCESSIBILITY_INTERACTION_CONNECTION)) {
            state |= STATE_FLAG_TRACE_A11Y_INTERACTION_CONNECTION_ENABLED;
        }
@@ -105,7 +100,6 @@ public class AccessibilityTraceManager implements AccessibilityTrace {
        if (isA11yTracingEnabledForTypes(FLAGS_ACCESSIBILITY_SERVICE)) {
            state |= STATE_FLAG_TRACE_A11Y_SERVICE_ENABLED;
        }
        }
        return state;
    }

@@ -116,11 +110,11 @@ public class AccessibilityTraceManager implements AccessibilityTrace {
            return;
        }

        synchronized (mA11yMSLock) {
        long oldEnabled = mEnabledLoggingFlags;
        mEnabledLoggingFlags = loggingTypes;

        if (needToNotifyClients(oldEnabled)) {
            synchronized (mA11yMSLock) {
                mService.scheduleUpdateClientsIfNeededLocked(mService.getCurrentUserState());
            }
        }
@@ -130,14 +124,14 @@ public class AccessibilityTraceManager implements AccessibilityTrace {

    @Override
    public void stopTrace() {
        boolean stop = false;
        synchronized (mA11yMSLock) {
        boolean stop;
        stop = isA11yTracingEnabled();

        long oldEnabled = mEnabledLoggingFlags;
        mEnabledLoggingFlags = FLAGS_LOGGING_NONE;

        if (needToNotifyClients(oldEnabled)) {
            synchronized (mA11yMSLock) {
                mService.scheduleUpdateClientsIfNeededLocked(mService.getCurrentUserState());
            }
        }