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

Commit 618f49ad authored by Alec Mouri's avatar Alec Mouri Committed by Automerger Merge Worker
Browse files

Use a separate mutex for BLASTBufferQueue in BLASTBufferItemConsumer am: 5c8b18c9

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

Change-Id: Ic82ca3fc39a615ec80fb729340a3bbf8e7a7a99f
parents bc26a9a3 5c8b18c9
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -118,12 +118,12 @@ void BLASTBufferItemConsumer::getConnectionEvents(uint64_t frameNumber, bool* ne
}

void BLASTBufferItemConsumer::setBlastBufferQueue(BLASTBufferQueue* blastbufferqueue) {
    Mutex::Autolock lock(mMutex);
    std::scoped_lock lock(mBufferQueueMutex);
    mBLASTBufferQueue = blastbufferqueue;
}

void BLASTBufferItemConsumer::onSidebandStreamChanged() {
    Mutex::Autolock lock(mMutex);
    std::scoped_lock lock(mBufferQueueMutex);
    if (mBLASTBufferQueue != nullptr) {
        sp<NativeHandle> stream = getSidebandStream();
        mBLASTBufferQueue->setSidebandStream(stream);
+2 −1
Original line number Diff line number Diff line
@@ -62,11 +62,12 @@ private:
    uint64_t mCurrentFrameNumber = 0;

    Mutex mMutex;
    std::mutex mBufferQueueMutex;
    ConsumerFrameEventHistory mFrameEventHistory GUARDED_BY(mMutex);
    std::queue<uint64_t> mDisconnectEvents GUARDED_BY(mMutex);
    bool mCurrentlyConnected GUARDED_BY(mMutex);
    bool mPreviouslyConnected GUARDED_BY(mMutex);
    BLASTBufferQueue* mBLASTBufferQueue GUARDED_BY(mMutex);
    BLASTBufferQueue* mBLASTBufferQueue GUARDED_BY(mBufferQueueMutex);
};

class BLASTBufferQueue