diff options
author | Eric Laurent <elaurent@google.com> | 2012-07-02 12:31:03 -0700 |
---|---|---|
committer | Eric Laurent <elaurent@google.com> | 2012-07-02 12:31:03 -0700 |
commit | 109347d421413303eb1678dd9e2aa9d40acf89d2 (patch) | |
tree | 51837c9c8163816bb896cb067e4a4a555f507a8b /services | |
parent | 717e128691f083a9469a1d0e363ac6ecd5c65d58 (diff) | |
download | frameworks_av-109347d421413303eb1678dd9e2aa9d40acf89d2.zip frameworks_av-109347d421413303eb1678dd9e2aa9d40acf89d2.tar.gz frameworks_av-109347d421413303eb1678dd9e2aa9d40acf89d2.tar.bz2 |
audioflinger: fix regression in attachAuxEffect().
Commit 717e1286 introduced a regression in PlaybackThread::Track::attachAuxEffect()
when called with an effect ID of 0 to detach the auxiliary effect.
It is normal in this case that AudioFlinger::getEffectThread_l() returns 0.
Bug 6768757.
Change-Id: I7430bd1aad2f68da38f7c3e4794e7ad657bfc6be
Diffstat (limited to 'services')
-rw-r--r-- | services/audioflinger/AudioFlinger.cpp | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp index abe0293..aab9984 100644 --- a/services/audioflinger/AudioFlinger.cpp +++ b/services/audioflinger/AudioFlinger.cpp @@ -4696,11 +4696,8 @@ status_t AudioFlinger::PlaybackThread::Track::attachAuxEffect(int EffectId) Mutex::Autolock _l(af->mLock); sp<PlaybackThread> srcThread = af->getEffectThread_l(AUDIO_SESSION_OUTPUT_MIX, EffectId); - if (srcThread == 0) { - return INVALID_OPERATION; - } - if (EffectId != 0 && playbackThread != srcThread.get()) { + if (EffectId != 0 && srcThread != 0 && playbackThread != srcThread.get()) { Mutex::Autolock _dl(playbackThread->mLock); Mutex::Autolock _sl(srcThread->mLock); sp<EffectChain> chain = srcThread->getEffectChain_l(AUDIO_SESSION_OUTPUT_MIX); |