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

Commit 09a1f34f authored by Eric Laurent's avatar Eric Laurent Committed by Gerrit Code Review
Browse files

Merge "DO NOT MERGE - audio policy: fix inifinite loop in clearAudioPatches()"

parents ac90a24d 8faa3262
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -2561,13 +2561,10 @@ status_t AudioPolicyManager::setAudioPortConfig(const struct audio_port_config *

void AudioPolicyManager::clearAudioPatches(uid_t uid)
{
    for (ssize_t i = 0; i < (ssize_t)mAudioPatches.size(); i++)  {
    for (ssize_t i = (ssize_t)mAudioPatches.size() - 1; i >= 0; i--)  {
        sp<AudioPatch> patchDesc = mAudioPatches.valueAt(i);
        if (patchDesc->mUid == uid) {
            // releaseAudioPatch() removes the patch from mAudioPatches
            if (releaseAudioPatch(mAudioPatches.keyAt(i), uid) == NO_ERROR) {
                i--;
            }
            releaseAudioPatch(mAudioPatches.keyAt(i), uid);
        }
    }
}