summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libaudio/AudioHardware.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/libaudio/AudioHardware.cpp b/libaudio/AudioHardware.cpp
index 771fa5e..24f1202 100644
--- a/libaudio/AudioHardware.cpp
+++ b/libaudio/AudioHardware.cpp
@@ -371,10 +371,8 @@ status_t AudioHardware::setMode(int mode)
status = AudioHardwareBase::setMode(mode);
LOGV("setMode() : new %d, old %d", mMode, prevMode);
if (status == NO_ERROR) {
- bool modeNeedsCPActive = mMode == AudioSystem::MODE_IN_CALL ||
- mMode == AudioSystem::MODE_RINGTONE;
// activate call clock in radio when entering in call or ringtone mode
- if (modeNeedsCPActive)
+ if (prevMode == AudioSystem::MODE_NORMAL)
{
if ((!mActivatedCP) && (mSecRilLibHandle) && (connectRILDIfRequired() == OK)) {
setCallClockSync(mRilClient, SOUND_CLOCK_START);
@@ -399,7 +397,7 @@ status_t AudioHardware::setMode(int mode)
setVoiceVolume_l(mVoiceVol);
mInCallAudioMode = true;
}
- if (mMode != AudioSystem::MODE_IN_CALL && mInCallAudioMode) {
+ if (mMode == AudioSystem::MODE_NORMAL && mInCallAudioMode) {
setInputSource_l(mInputSource);
if (mMixer != NULL) {
TRACE_DRIVER_IN(DRV_MIXER_GET)
@@ -428,7 +426,7 @@ status_t AudioHardware::setMode(int mode)
mInCallAudioMode = false;
}
- if (!modeNeedsCPActive) {
+ if (mMode == AudioSystem::MODE_NORMAL) {
if(mActivatedCP)
mActivatedCP = false;
}