diff options
author | Eric Laurent <elaurent@google.com> | 2015-01-27 18:21:09 -0800 |
---|---|---|
committer | Eric Laurent <elaurent@google.com> | 2015-01-27 18:21:09 -0800 |
commit | 1db89b9c2692fd70eb1cc98b7db2f9beed81e66e (patch) | |
tree | beb7c19359bcc63ef6bbf918bf3b4a6ffe2a3003 /services/audiopolicy/AudioPolicyManager.cpp | |
parent | 64c496c8d51c71605cd34a510da2ecd8180656ec (diff) | |
download | frameworks_av-1db89b9c2692fd70eb1cc98b7db2f9beed81e66e.zip frameworks_av-1db89b9c2692fd70eb1cc98b7db2f9beed81e66e.tar.gz frameworks_av-1db89b9c2692fd70eb1cc98b7db2f9beed81e66e.tar.bz2 |
Audio policy: fix device gain initialization
Fix initilization of default gain configuration for
audio devices loaded from audio_policy.conf.
Initialization cannot be done in constructor as the possible
gain configurations are not loaded yet.
Bug: 19120566.
Change-Id: I78f057ecfa1a121365ac3d8f317912a6f1647627
Diffstat (limited to 'services/audiopolicy/AudioPolicyManager.cpp')
-rw-r--r-- | services/audiopolicy/AudioPolicyManager.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/services/audiopolicy/AudioPolicyManager.cpp b/services/audiopolicy/AudioPolicyManager.cpp index 0349327..fb74d66 100644 --- a/services/audiopolicy/AudioPolicyManager.cpp +++ b/services/audiopolicy/AudioPolicyManager.cpp @@ -7449,9 +7449,6 @@ AudioPolicyManager::DeviceDescriptor::DeviceDescriptor(const String8& name, audi NULL), mDeviceType(type), mAddress(""), mId(0) { - if (mGains.size() > 0) { - mGains[0]->getDefaultConfig(&mGain); - } } bool AudioPolicyManager::DeviceDescriptor::equals(const sp<DeviceDescriptor>& other) const @@ -7466,6 +7463,15 @@ bool AudioPolicyManager::DeviceDescriptor::equals(const sp<DeviceDescriptor>& ot mChannelMask == other->mChannelMask); } +void AudioPolicyManager::DeviceDescriptor::loadGains(cnode *root) +{ + AudioPort::loadGains(root); + if (mGains.size() > 0) { + mGains[0]->getDefaultConfig(&mGain); + } +} + + void AudioPolicyManager::DeviceVector::refreshTypes() { mDeviceTypes = AUDIO_DEVICE_NONE; |