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

Commit 126c910f authored by Glenn Kasten's avatar Glenn Kasten
Browse files

Remove active track when thread goes to standby

Bug: 7369232
Change-Id: I7ff9f525dad4be0aef562a53015b06ee7d3d50f1
parent 56966145
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -3033,7 +3033,7 @@ AudioFlinger::PlaybackThread::mixer_state AudioFlinger::MixerThread::prepareTrac
                            (mOutput->stream->get_latency(mOutput->stream)*mSampleRate) / 1000;
                    size_t framesWritten =
                            mBytesWritten / audio_stream_frame_size(&mOutput->stream->common);
                    if (!track->presentationComplete(framesWritten, audioHALFrames)) {
                    if (!(mStandby || track->presentationComplete(framesWritten, audioHALFrames))) {
                        // track stays in active list until presentation is complete
                        break;
                    }
@@ -3278,7 +3278,7 @@ AudioFlinger::PlaybackThread::mixer_state AudioFlinger::MixerThread::prepareTrac
                size_t audioHALFrames = (latency_l() * mSampleRate) / 1000;
                size_t framesWritten =
                        mBytesWritten / audio_stream_frame_size(&mOutput->stream->common);
                if (track->presentationComplete(framesWritten, audioHALFrames)) {
                if (mStandby || track->presentationComplete(framesWritten, audioHALFrames)) {
                    if (track->isStopped()) {
                        track->reset();
                    }
@@ -3801,7 +3801,7 @@ AudioFlinger::PlaybackThread::mixer_state AudioFlinger::DirectOutputThread::prep
                size_t audioHALFrames = (latency_l() * mSampleRate) / 1000;
                size_t framesWritten =
                        mBytesWritten / audio_stream_frame_size(&mOutput->stream->common);
                if (track->presentationComplete(framesWritten, audioHALFrames)) {
                if (mStandby || track->presentationComplete(framesWritten, audioHALFrames)) {
                    if (track->isStopped()) {
                        track->reset();
                    }