From 6bf9ae20b3bd2dbb8f2e89ee167a6785222301cf Mon Sep 17 00:00:00 2001 From: Eric Laurent Date: Fri, 30 Aug 2013 15:12:37 -0700 Subject: [PATCH] audioflinger: offloaded tracks flush/pause order Make sure that a flush received after a pause is forwarded to the HAL after the pause. Change-Id: Ib3221f70c59f8b3dbbac20b23104f6b779b75be0 --- services/audioflinger/Threads.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp index bc01edeeaa..3921b68d49 100644 --- a/services/audioflinger/Threads.cpp +++ b/services/audioflinger/Threads.cpp @@ -3810,10 +3810,6 @@ AudioFlinger::PlaybackThread::mixer_state AudioFlinger::OffloadThread::prepareTr size_t count = mActiveTracks.size(); mixer_state mixerStatus = MIXER_IDLE; - if (mFlushPending) { - flushHw_l(); - mFlushPending = false; - } // find out which tracks need to be processed for (size_t i = 0; i < count; i++) { sp t = mActiveTracks[i].promote(); @@ -3938,6 +3934,12 @@ AudioFlinger::PlaybackThread::mixer_state AudioFlinger::OffloadThread::prepareTr // compute volume for this track processVolume_l(track, last); } + + if (mFlushPending) { + flushHw_l(); + mFlushPending = false; + } + // remove all the tracks that need to be... removeTracks_l(*tracksToRemove); -- 2.11.0