diff options
Diffstat (limited to 'services/audioflinger/Threads.cpp')
-rw-r--r-- | services/audioflinger/Threads.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp index aca6c18..e70a09a 100644 --- a/services/audioflinger/Threads.cpp +++ b/services/audioflinger/Threads.cpp @@ -1602,6 +1602,7 @@ void AudioFlinger::PlaybackThread::readOutputParameters() if (mOutput->stream->set_callback(mOutput->stream, AudioFlinger::PlaybackThread::asyncCallback, this) == 0) { mUseAsyncWrite = true; + mCallbackThread = new AudioFlinger::AsyncCallbackThread(this); } } @@ -3756,9 +3757,9 @@ void AudioFlinger::DirectOutputThread::cacheParameters_l() // ---------------------------------------------------------------------------- AudioFlinger::AsyncCallbackThread::AsyncCallbackThread( - const sp<AudioFlinger::OffloadThread>& offloadThread) + const wp<AudioFlinger::PlaybackThread>& playbackThread) : Thread(false /*canCallJava*/), - mOffloadThread(offloadThread), + mPlaybackThread(playbackThread), mWriteAckSequence(0), mDrainSequence(0) { @@ -3793,13 +3794,13 @@ bool AudioFlinger::AsyncCallbackThread::threadLoop() mDrainSequence &= ~1; } { - sp<AudioFlinger::OffloadThread> offloadThread = mOffloadThread.promote(); - if (offloadThread != 0) { + sp<AudioFlinger::PlaybackThread> playbackThread = mPlaybackThread.promote(); + if (playbackThread != 0) { if (writeAckSequence & 1) { - offloadThread->resetWriteBlocked(writeAckSequence >> 1); + playbackThread->resetWriteBlocked(writeAckSequence >> 1); } if (drainSequence & 1) { - offloadThread->resetDraining(drainSequence >> 1); + playbackThread->resetDraining(drainSequence >> 1); } } } @@ -3857,7 +3858,6 @@ AudioFlinger::OffloadThread::OffloadThread(const sp<AudioFlinger>& audioFlinger, mHwPaused(false), mPausedBytesRemaining(0) { - mCallbackThread = new AudioFlinger::AsyncCallbackThread(this); } AudioFlinger::OffloadThread::~OffloadThread() |