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

Commit 0744b6da authored by Rob Carr's avatar Rob Carr Committed by Automerger Merge Worker
Browse files

Merge "Layer: Don't need atomic for transaction flags" into sc-dev am: c67c384e am: 47755d5d

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

Change-Id: I604e6c9076d608bbe1feb2553face2f145e41b76
parents 42731030 47755d5d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@
#include <gui/BufferQueue.h>
#include <private/gui/SyncFeatures.h>
#include <renderengine/Image.h>
#include "TunnelModeEnabledReporter.h"

#include "EffectLayer.h"
#include "FrameTracer/FrameTracer.h"
+4 −2
Original line number Diff line number Diff line
@@ -847,11 +847,13 @@ void Layer::commitTransaction(State& stateToCommit) {
}

uint32_t Layer::getTransactionFlags(uint32_t flags) {
    return mTransactionFlags.fetch_and(~flags) & flags;
    auto ret = mTransactionFlags & flags;
    mTransactionFlags &= ~flags;
    return ret;
}

uint32_t Layer::setTransactionFlags(uint32_t flags) {
    return mTransactionFlags.fetch_or(flags);
    return mTransactionFlags |= flags;
}

bool Layer::setPosition(float x, float y) {
+1 −1
Original line number Diff line number Diff line
@@ -960,7 +960,7 @@ protected:

    // these are protected by an external lock (mStateLock)
    State mCurrentState;
    std::atomic<uint32_t> mTransactionFlags{0};
    uint32_t mTransactionFlags{0};

    // Timestamp history for UIAutomation. Thread safe.
    FrameTracker mFrameTracker;