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

Commit 814442c3 authored by Tyler Gunn's avatar Tyler Gunn
Browse files

Fix issue with pulling a previously pulled call.

The bug reported is that sometimes a call isn't marked as pullable when
it should be.
The mExternalCallPullableState map tracks the last pullable state reported
by the network.  When a new external call is created, there was an issue
where the network pullable state was not being correctly tracked.  Further
updates to the network pullable state were not saved.

Bug: 30047706
Change-Id: I37060f12c393f2e2aba2bd2e8e3237f152495807
parent 0f6c2788
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -324,7 +324,7 @@ public class ImsExternalCallTracker implements ImsPhoneCallTracker.PhoneStateLis

        // Add to list of tracked connections.
        mExternalConnections.put(connection.getCallId(), connection);
        mExternalCallPullableState.put(connection.getCallId(), isCallPullPermitted);
        mExternalCallPullableState.put(connection.getCallId(), state.isCallPullable());

        // Note: The notification of unknown connection is ultimately handled by
        // PstnIncomingCallNotifier#addNewUnknownCall.  That method will ensure that an extra is set
@@ -365,9 +365,11 @@ public class ImsExternalCallTracker implements ImsPhoneCallTracker.PhoneStateLis
            connection.setVideoState(newVideoState);
        }

        mExternalCallPullableState.put(state.getCallId(), state.isCallPullable());
        boolean isCallPullPermitted = isCallPullPermitted(state.isCallPullable(), newVideoState);
        Log.d(TAG,
                "updateExistingConnection - pullable state : externalCallId = " + connection.getCallId()
                "updateExistingConnection - pullable state : externalCallId = " + connection
                        .getCallId()
                        + " ; isPullable = " + isCallPullPermitted
                        + " ; networkPullable = " + state.isCallPullable()
                        + " ; isVideo = "