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

Commit 0d852e4c authored by Eric Laurent's avatar Eric Laurent Committed by android-build-merger
Browse files

Merge "audio policy: fix virtual called from constructor"

am: 1a5100d4

Change-Id: Ie21e8efa8fdf93ff716ec304cb99ff807ef95bac
parents 6775ee2b 1a5100d4
Loading
Loading
Loading
Loading
+7 −1
Original line number Original line Diff line number Diff line
@@ -21,7 +21,13 @@ namespace android {
extern "C" AudioPolicyInterface* createAudioPolicyManager(
extern "C" AudioPolicyInterface* createAudioPolicyManager(
        AudioPolicyClientInterface *clientInterface)
        AudioPolicyClientInterface *clientInterface)
{
{
    return new AudioPolicyManager(clientInterface);
    AudioPolicyManager *apm = new AudioPolicyManager(clientInterface);
    status_t status = apm->initialize();
    if (status != NO_ERROR) {
        delete apm;
        apm = nullptr;
    }
    return apm;
}
}


extern "C" void destroyAudioPolicyManager(AudioPolicyInterface *interface)
extern "C" void destroyAudioPolicyManager(AudioPolicyInterface *interface)
+0 −1
Original line number Original line Diff line number Diff line
@@ -4306,7 +4306,6 @@ AudioPolicyManager::AudioPolicyManager(AudioPolicyClientInterface *clientInterfa
        : AudioPolicyManager(clientInterface, false /*forTesting*/)
        : AudioPolicyManager(clientInterface, false /*forTesting*/)
{
{
    loadConfig();
    loadConfig();
    initialize();
}
}


void AudioPolicyManager::loadConfig() {
void AudioPolicyManager::loadConfig() {
+2 −1
Original line number Original line Diff line number Diff line
@@ -307,6 +307,8 @@ public:
            return volumeGroup != VOLUME_GROUP_NONE ? NO_ERROR : BAD_VALUE;
            return volumeGroup != VOLUME_GROUP_NONE ? NO_ERROR : BAD_VALUE;
        }
        }


        status_t initialize();

protected:
protected:
        // A constructor that allows more fine-grained control over initialization process,
        // A constructor that allows more fine-grained control over initialization process,
        // used in automatic tests.
        // used in automatic tests.
@@ -321,7 +323,6 @@ protected:
        //   - initialize.
        //   - initialize.
        AudioPolicyConfig& getConfig() { return mConfig; }
        AudioPolicyConfig& getConfig() { return mConfig; }
        void loadConfig();
        void loadConfig();
        status_t initialize();


        // From AudioPolicyManagerObserver
        // From AudioPolicyManagerObserver
        virtual const AudioPatchCollection &getAudioPatches() const
        virtual const AudioPatchCollection &getAudioPatches() const