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

Commit 9e1009dd authored by Brad Ebinger's avatar Brad Ebinger Committed by Gerrit Code Review
Browse files

Merge "Discard dead MmTelFeature Binder Instances"

parents cc7362c6 cd910c21
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -44,8 +44,12 @@ public class ImsEcbmImplBase {
        @Override
        public void setListener(IImsEcbmListener listener) {
            synchronized (mLock) {
                if (mImsEcbm != null && listener != null && Objects.equals(
                        mImsEcbm.asBinder(), listener.asBinder())) {
                if (mListener != null && !mListener.asBinder().isBinderAlive()) {
                    Log.w(TAG, "setListener: discarding dead Binder");
                    mListener = null;
                }
                if (mListener != null && listener != null && Objects.equals(
                        mListener.asBinder(), listener.asBinder())) {
                    return;
                }
                if (listener == null) {
+4 −0
Original line number Diff line number Diff line
@@ -48,6 +48,10 @@ public class ImsMultiEndpointImplBase {
        @Override
        public void setListener(IImsExternalCallStateListener listener) throws RemoteException {
            synchronized (mLock) {
                if (mListener != null && !mListener.asBinder().isBinderAlive()) {
                    Log.w(TAG, "setListener: discarding dead Binder");
                    mListener = null;
                }
                if (mListener != null && listener != null && Objects.equals(
                        mListener.asBinder(), listener.asBinder())) {
                    return;
+7 −0
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ import android.annotation.SystemApi;
import android.os.Bundle;
import android.os.RemoteException;
import android.telephony.ims.ImsUtListener;
import android.util.Log;

import com.android.ims.internal.IImsUt;
import com.android.ims.internal.IImsUtListener;
@@ -41,6 +42,7 @@ import java.util.Objects;
// will break other implementations of ImsUt maintained by other ImsServices.
@SystemApi
public class ImsUtImplBase {
    private static final String TAG = "ImsUtImplBase";
    /**
     * Bar all incoming calls. (See 3GPP TS 24.611)
     * @hide
@@ -207,6 +209,11 @@ public class ImsUtImplBase {
        @Override
        public void setListener(IImsUtListener listener) throws RemoteException {
            synchronized (mLock) {
                if (mUtListener != null
                        && !mUtListener.getListenerInterface().asBinder().isBinderAlive()) {
                    Log.w(TAG, "setListener: discarding dead Binder");
                    mUtListener = null;
                }
                if (mUtListener != null && listener != null && Objects.equals(
                        mUtListener.getListenerInterface().asBinder(), listener.asBinder())) {
                    return;