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

Commit 0b7ea54a authored by Henry Fang's avatar Henry Fang Committed by Automerger Merge Worker
Browse files

Merge "Fix MediaCas CTS failure TRM is checking input parameters and won't...

Merge "Fix MediaCas CTS failure TRM is checking input parameters and won't allow null executor. Use context main executor to call Tuner Resource Manager (TRM)" into rvc-dev am: bdc05af1

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12162120

Change-Id: Icdb03ffdb5056b7023a491424c24996fe31ba69b
parents e2505847 bdc05af1
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -34,7 +34,6 @@ import android.media.tv.tunerresourcemanager.ResourceClientProfile;
import android.media.tv.tunerresourcemanager.TunerResourceManager;
import android.os.Bundle;
import android.os.Handler;
import android.os.HandlerExecutor;
import android.os.HandlerThread;
import android.os.IHwBinder;
import android.os.Looper;
@@ -50,6 +49,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;

@@ -392,7 +392,10 @@ public final class MediaCas implements AutoCloseable {
            @Override
            public void onReclaimResources() {
                synchronized (mSessionMap) {
                    mSessionMap.forEach((casSession, sessionResourceHandle) -> casSession.close());
                    List<Session> sessionList = new ArrayList<>(mSessionMap.keySet());
                    for (Session casSession: sessionList) {
                        casSession.close();
                    }
                }
                mEventHandler.sendMessage(mEventHandler.obtainMessage(
                        EventHandler.MSG_CAS_RESOURCE_LOST));
@@ -734,7 +737,7 @@ public final class MediaCas implements AutoCloseable {
            ResourceClientProfile profile =
                    new ResourceClientProfile(tvInputServiceSessionId, priorityHint);
            mTunerResourceManager.registerClientProfile(
                    profile, new HandlerExecutor(mEventHandler), mResourceListener, clientId);
                    profile, context.getMainExecutor(), mResourceListener, clientId);
            mClientId = clientId[0];
        }
    }