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

Commit 021598cb authored by Eric Laurent's avatar Eric Laurent Committed by android-build-merger
Browse files

Merge "audioservice: fix hasMediaDynamicPolicy() for loopback and render...

Merge "audioservice: fix hasMediaDynamicPolicy() for loopback and render policies" into qt-r1-dev am: aa8b8ece
am: f6b54397

Change-Id: I6ceb51fb953c4a8b6d907f76565fcf7fa8ef4850
parents 3344bfcb f6b54397
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -5181,6 +5181,7 @@ public class AudioService extends IAudioService.Stub

    /**
     * @return true if there is currently a registered dynamic mixing policy that affects media
     * and is not a render + loopback policy
     */
    /*package*/ boolean hasMediaDynamicPolicy() {
        synchronized (mAudioPolicies) {
@@ -5189,7 +5190,8 @@ public class AudioService extends IAudioService.Stub
            }
            final Collection<AudioPolicyProxy> appColl = mAudioPolicies.values();
            for (AudioPolicyProxy app : appColl) {
                if (app.hasMixAffectingUsage(AudioAttributes.USAGE_MEDIA)) {
                if (app.hasMixAffectingUsage(AudioAttributes.USAGE_MEDIA,
                        AudioMix.ROUTE_FLAG_LOOP_BACK_RENDER)) {
                    return true;
                }
            }
@@ -6961,9 +6963,10 @@ public class AudioService extends IAudioService.Stub
            Binder.restoreCallingIdentity(identity);
        }

        boolean hasMixAffectingUsage(int usage) {
        boolean hasMixAffectingUsage(int usage, int excludedFlags) {
            for (AudioMix mix : mMixes) {
                if (mix.isAffectingUsage(usage)) {
                if (mix.isAffectingUsage(usage)
                        && ((mix.getRouteFlags() & excludedFlags) != excludedFlags)) {
                    return true;
                }
            }