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

Commit 84f9371e authored by Your Name's avatar Your Name
Browse files

Fix native Audio Mix conversion for exclusion rules

Exclusion rules should be converted in native audio mix criterion
conversion. Also, error should be returned for invalid rule types.

Bug: 407460384
Flag: EXEMPT bug fix
Test: atest com.google.android.gts.audio.AudioHostTest#testPolicyRegistration_isRegistered
Change-Id: Icb16da12ca0eccc475a20e499251234390eac480
parent 3995a1f7
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -2269,7 +2269,7 @@ static jint nativeAudioMixToJavaAudioMixingRule(JNIEnv *env, const AudioMix &nAu
        jobject jAudioAttributes = NULL;
        jobject jMixMatchCriterion = NULL;
        jobject jValueInteger = NULL;
        switch (criteria.mRule) {
        switch (criteria.mRule & ~RULE_EXCLUSION_MASK) {
            case RULE_MATCH_UID:
                jValueInteger = env->NewObject(gIntegerClass, gIntegerCstor, criteria.mValue.mUid);
                jMixMatchCriterion = env->NewObject(gAudioMixMatchCriterionClass,
@@ -2306,6 +2306,9 @@ static jint nativeAudioMixToJavaAudioMixingRule(JNIEnv *env, const AudioMix &nAu
                                                    gAudioMixMatchCriterionAttrCstor,
                                                    jAudioAttributes, criteria.mRule);
                break;
            default:
                ALOGE("Invalid rule type: %d ", criteria.mRule);
                return AUDIO_JAVA_BAD_VALUE;
        }
        env->CallBooleanMethod(jAudioMixMatchCriterionList, gArrayListMethods.add,
                               jMixMatchCriterion);