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

Commit f9adf6b7 authored by Jason Sams's avatar Jason Sams Committed by Android (Google) Code Review
Browse files

Merge "Prevent message overrun in LocklessCommandFifo."

parents 7e06ea80 8ea061bc
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -166,7 +166,7 @@ bool LocklessCommandFifo::makeSpaceNonBlocking(uint32_t bytes) {
    //dumpState("make space non-blocking");
    if ((mPut+bytes) > mEnd) {
        // Need to loop regardless of where get is.
        if ((mGet > mPut) && (mBuffer+4 >= mGet)) {
        if ((mGet > mPut) || (mBuffer+4 >= mGet)) {
            return false;
        }

@@ -189,7 +189,7 @@ void LocklessCommandFifo::makeSpace(uint32_t bytes) {
    //dumpState("make space");
    if ((mPut+bytes) > mEnd) {
        // Need to loop regardless of where get is.
        while ((mGet > mPut) && (mBuffer+4 >= mGet)) {
        while ((mGet > mPut) || (mBuffer+4 >= mGet)) {
            usleep(100);
        }

@@ -210,4 +210,3 @@ void LocklessCommandFifo::makeSpace(uint32_t bytes) {
void LocklessCommandFifo::dumpState(const char *s) const {
    LOGV("%s %p  put %p, get %p,  buf %p,  end %p", s, this, mPut, mGet, mBuffer, mEnd);
}