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

Commit 26e2d29d authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "CCodec: flush reorder stash at flush"

parents 25bc271b 6897f229
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1519,6 +1519,11 @@ void CCodecBufferChannel::ReorderStash::clear() {
    mKey = C2Config::ORDINAL;
}

void CCodecBufferChannel::ReorderStash::flush() {
    mPending.clear();
    mStash.clear();
}

void CCodecBufferChannel::ReorderStash::setDepth(uint32_t depth) {
    mPending.splice(mPending.end(), mStash);
    mDepth = depth;
@@ -2526,6 +2531,7 @@ void CCodecBufferChannel::flush(const std::list<std::unique_ptr<C2Work>> &flushe
        Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
        (*buffers)->flush(flushedWork);
    }
    mReorderStash.lock()->flush();
}

void CCodecBufferChannel::onWorkDone(
+1 −0
Original line number Diff line number Diff line
@@ -359,6 +359,7 @@ private:
        ReorderStash();

        void clear();
        void flush();
        void setDepth(uint32_t depth);
        void setKey(C2Config::ordinal_key_t key);
        bool pop(Entry *entry);