Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0809a424 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

[AudioPolicy][Engine] Attributes of strategy not populated am: d7227cc1 am: bd321802

Change-Id: I00f5910c99975118da8b5bf567dcadf4bd12178b
parents 80810ed5 bd321802
Loading
Loading
Loading
Loading
+14 −12
Original line number Original line Diff line number Diff line
@@ -125,8 +125,7 @@ engineConfig::ParsingResult EngineBase::loadAudioPolicyEngineConfig()
        }
        }
        return volumeGroup;
        return volumeGroup;
    };
    };
    auto addSupportedStreamAttributes = [](auto &group, auto &volumeGroup, auto &strategy) {
    auto addSupportedAttributesToGroup = [](auto &group, auto &volumeGroup, auto &strategy) {
        volumeGroup->addSupportedStream(group.stream);
        for (const auto &attr : group.attributesVect) {
        for (const auto &attr : group.attributesVect) {
            strategy->addAttributes({group.stream, volumeGroup->getId(), attr});
            strategy->addAttributes({group.stream, volumeGroup->getId(), attr});
            volumeGroup->addSupportedAttributes(attr);
            volumeGroup->addSupportedAttributes(attr);
@@ -166,18 +165,21 @@ engineConfig::ParsingResult EngineBase::loadAudioPolicyEngineConfig()
            const auto &iter = std::find_if(begin(mVolumeGroups), end(mVolumeGroups),
            const auto &iter = std::find_if(begin(mVolumeGroups), end(mVolumeGroups),
                                         [&group](const auto &volumeGroup) {
                                         [&group](const auto &volumeGroup) {
                    return group.volumeGroup == volumeGroup.second->getName(); });
                    return group.volumeGroup == volumeGroup.second->getName(); });
            if (group.stream != AUDIO_STREAM_DEFAULT) {
            sp<VolumeGroup> volumeGroup = nullptr;
            // If no volume group provided for this strategy, creates a new one using
            // Music Volume Group configuration (considered as the default)
            if (iter == end(mVolumeGroups)) {
            if (iter == end(mVolumeGroups)) {
                ALOGW("%s: No configuration of %s found, using default volume configuration"
                ALOGW("%s: No configuration of %s found, using default volume configuration"
                        , __FUNCTION__, group.volumeGroup.c_str());
                        , __FUNCTION__, group.volumeGroup.c_str());
                defaultVolumeConfig.name = group.volumeGroup;
                defaultVolumeConfig.name = group.volumeGroup;
                    sp<VolumeGroup> volumeGroup =
                volumeGroup = loadVolumeConfig(mVolumeGroups, defaultVolumeConfig);
                            loadVolumeConfig(mVolumeGroups, defaultVolumeConfig);
                    addSupportedStreamAttributes(group, volumeGroup, strategy);
            } else {
            } else {
                    addSupportedStreamAttributes(group, iter->second, strategy);
                volumeGroup = iter->second;
            }
            }
            if (group.stream != AUDIO_STREAM_DEFAULT) {
                volumeGroup->addSupportedStream(group.stream);
            }
            }
            addSupportedAttributesToGroup(group, volumeGroup, strategy);
        }
        }
        product_strategy_t strategyId = strategy->getId();
        product_strategy_t strategyId = strategy->getId();
        mProductStrategies[strategyId] = strategy;
        mProductStrategies[strategyId] = strategy;