summaryrefslogtreecommitdiffstats
path: root/services/audiopolicy/managerdefault
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2015-07-02 17:10:28 -0700
committerEric Laurent <elaurent@google.com>2015-07-02 17:15:58 -0700
commit63dea1d5334acf3baa9448086dd504ead57d814b (patch)
tree850a50ae6a88d5aa6d86e82b90f9ad71c12945dd /services/audiopolicy/managerdefault
parentdfad5454e0caf46f8732f1415d3b9a76f2a1242e (diff)
downloadframeworks_av-63dea1d5334acf3baa9448086dd504ead57d814b.zip
frameworks_av-63dea1d5334acf3baa9448086dd504ead57d814b.tar.gz
frameworks_av-63dea1d5334acf3baa9448086dd504ead57d814b.tar.bz2
audio policy: fix regression in incall notification management
Commit 2110e04c introduced a regression preventing ongoing alarms to be restored when exiting a call and leaving the replacement tone playing for ever. Also add missing management of accessibility prompts when entering a call. Bug: 21857005. Change-Id: I4295c791c003db42c0fba9f618e51f60438158d1
Diffstat (limited to 'services/audiopolicy/managerdefault')
-rw-r--r--services/audiopolicy/managerdefault/AudioPolicyManager.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/services/audiopolicy/managerdefault/AudioPolicyManager.cpp b/services/audiopolicy/managerdefault/AudioPolicyManager.cpp
index ee25b71..6983b5c 100644
--- a/services/audiopolicy/managerdefault/AudioPolicyManager.cpp
+++ b/services/audiopolicy/managerdefault/AudioPolicyManager.cpp
@@ -427,7 +427,7 @@ void AudioPolicyManager::setPhoneState(audio_mode_t state)
/// Opens: can these line be executed after the switch of volume curves???
// if leaving call state, handle special case of active streams
// pertaining to sonification strategy see handleIncallSonification()
- if (isInCall()) {
+ if (isStateInCall(oldState)) {
ALOGV("setPhoneState() in call state management: new state is %d", state);
for (int stream = 0; stream < AUDIO_STREAM_CNT; stream++) {
if (stream == AUDIO_STREAM_PATCH) {
@@ -436,7 +436,7 @@ void AudioPolicyManager::setPhoneState(audio_mode_t state)
handleIncallSonification((audio_stream_type_t)stream, false, true);
}
- // force reevaluating accessibility routing when call starts
+ // force reevaluating accessibility routing when call stops
mpClientInterface->invalidateStream(AUDIO_STREAM_ACCESSIBILITY);
}
@@ -514,6 +514,9 @@ void AudioPolicyManager::setPhoneState(audio_mode_t state)
}
handleIncallSonification((audio_stream_type_t)stream, true, true);
}
+
+ // force reevaluating accessibility routing when call starts
+ mpClientInterface->invalidateStream(AUDIO_STREAM_ACCESSIBILITY);
}
// Flag that ringtone volume must be limited to music volume until we exit MODE_RINGTONE