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

Commit 83de7723 authored by Tyler Gunn's avatar Tyler Gunn
Browse files

Add cleanupCalls to call tracker.

For GsmCdmaCallTracker, this calls pollCallsWhenSafe().  By polling the
calls in the RIL, the GSMCdmaCallTracker will reconcile the calls it knows
about with what the RIL reports, removing stale calls.

Test: Manual
Bug: 63317180
Change-Id: I7ee8609c41376bf21c428d04aab7d76151200699
parent 17a99fb6
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -296,6 +296,14 @@ public abstract class CallTracker extends Handler {
    public abstract PhoneConstants.State getState();
    protected abstract void log(String msg);

    /**
     * Called when the call tracker should attempt to reconcile its calls against its underlying
     * phone implementation and cleanup any stale calls.
     */
    public void cleanupCalls() {
        // no base implementation
    }

    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
        pw.println("CallTracker:");
        pw.println(" mPendingOperations=" + mPendingOperations);
+9 −0
Original line number Diff line number Diff line
@@ -1672,4 +1672,13 @@ public class GsmCdmaCallTracker extends CallTracker {
                MAX_CONNECTIONS_PER_CALL_GSM :
                MAX_CONNECTIONS_PER_CALL_CDMA;
    }

    /**
     * Called to force the call tracker to cleanup any stale calls.  Does this by triggering
     * {@code GET_CURRENT_CALLS} on the RIL.
     */
    @Override
    public void cleanupCalls() {
        pollCallsWhenSafe();
    }
}