From f5884e73b0e4af502bfc6c18b074e95552d77db6 Mon Sep 17 00:00:00 2001 From: Misael Lopez Cruz Date: Fri, 13 Dec 2013 01:46:07 -0600 Subject: audio: Reorder voice call output stream termination Unregister the voice call downlink stream before letting any ongoing stream on cabin switch back its original writer. Otherwise, it may end up trying to register two streams with the same slot masks. An incorrect log message is also fixed. Change-Id: Ic5cb4d2ed0cc4de4232151df9ed8d45b2de9d5c2 Signed-off-by: Misael Lopez Cruz --- audio/multizone/AudioHw.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/audio/multizone/AudioHw.cpp b/audio/multizone/AudioHw.cpp index a7e3586..5432c07 100644 --- a/audio/multizone/AudioHw.cpp +++ b/audio/multizone/AudioHw.cpp @@ -195,7 +195,7 @@ int AudioStreamOut::standby() void AudioStreamOut::setVoiceCall(bool on) { - ALOGV("AudioStreamOut: standby()"); + ALOGV("AudioStreamOut: setVoiceCall() %s", on ? "enter" : "leave"); AutoMutex lock(mLock); @@ -879,9 +879,9 @@ void AudioHwDevice::disableVoiceCall() sp outStream = mPrimaryStreamOut.promote(); if (outStream != NULL) { - outStream->setVoiceCall(false); if (outStream->mWriter->isStreamRegistered(mVoiceDLOutStream)) outStream->mWriter->unregisterStream(mVoiceDLOutStream); + outStream->setVoiceCall(false); } else { ALOGE("AudioHwDevice: primary output stream is not valid"); } -- cgit v1.2.3-54-g00ecf