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

Commit 98e2e030 authored by Eric Laurent's avatar Eric Laurent Committed by Android Git Automerger
Browse files

am a4f7e0e9: audioflinger: fix duplicating thread standby

* commit 'a4f7e0e9':
  audioflinger: fix duplicating thread standby
parents d89dea16 a4f7e0e9
Loading
Loading
Loading
Loading
+8 −9
Original line number Diff line number Diff line
@@ -3891,6 +3891,7 @@ void AudioFlinger::DuplicatingThread::threadLoop_mix()
    }
    sleepTime = 0;
    writeFrames = mNormalFrameCount;
    standbyTime = systemTime() + standbyDelay;
}

void AudioFlinger::DuplicatingThread::threadLoop_sleepTime()
@@ -3902,21 +3903,19 @@ void AudioFlinger::DuplicatingThread::threadLoop_sleepTime()
            sleepTime = idleSleepTime;
        }
    } else if (mBytesWritten != 0) {
        if (mMixerStatus == MIXER_TRACKS_ENABLED) {
            writeFrames = mNormalFrameCount;
            memset(mMixBuffer, 0, mixBufferSize);
        } else {
            // flush remaining overflow buffers in output tracks
        for (size_t i = 0; i < outputTracks.size(); i++) {
            if (outputTracks[i]->isActive()) {
                sleepTime = 0;
            writeFrames = 0;
                memset(mMixBuffer, 0, mixBufferSize);
                break;
            }
        }
        sleepTime = 0;
    }
}

void AudioFlinger::DuplicatingThread::threadLoop_write()
{
    standbyTime = systemTime() + standbyDelay;
    for (size_t i = 0; i < outputTracks.size(); i++) {
        outputTracks[i]->write(mMixBuffer, writeFrames);
    }