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

Commit cb46d8a9 authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Snap for 6445537 from 1b9cd84d to rvc-release

Change-Id: I22f59ba8fdbd02e8af191a19e60b57fad51e15f2
parents 16e647b2 1b9cd84d
Loading
Loading
Loading
Loading
+12 −10
Original line number Diff line number Diff line
@@ -931,19 +931,21 @@ public class GsmCdmaCallTracker extends CallTracker {
                    // Loop through foreground call connections as
                    // it contains the known logical connections.
                    ArrayList<Connection> connections = mForegroundCall.getConnections();
                    int count = connections.size();
                    for (int n = 0; n < count; n++) {
                        if (Phone.DEBUG_PHONE) log("adding fgCall cn " + n + " to droppedDuringPoll");
                        GsmCdmaConnection cn = (GsmCdmaConnection) connections.get(n);
                        mDroppedDuringPoll.add(cn);
                    for (Connection cn : connections) {
                        if (Phone.DEBUG_PHONE) {
                            log("adding fgCall cn " + cn + "to droppedDuringPoll");
                        }
                        mDroppedDuringPoll.add((GsmCdmaConnection) cn);
                    }
                    count = mRingingCall.getConnectionsCount();

                    connections = mRingingCall.getConnections();
                    // Loop through ringing call connections as
                    // it may contain the known logical connections.
                    for (int n = 0; n < count; n++) {
                        if (Phone.DEBUG_PHONE) log("adding rgCall cn " + n + " to droppedDuringPoll");
                        GsmCdmaConnection cn = (GsmCdmaConnection) connections.get(n);
                        mDroppedDuringPoll.add(cn);
                    for (Connection cn : connections) {
                        if (Phone.DEBUG_PHONE) {
                            log("adding rgCall cn " + cn + "to droppedDuringPoll");
                        }
                        mDroppedDuringPoll.add((GsmCdmaConnection) cn);
                    }

                    // Re-start Ecm timer when the connected emergency call ends
+2 −1
Original line number Diff line number Diff line
@@ -69,7 +69,8 @@ public class NetworkTypeController extends StateMachine {
    private static final String STATE_ANY = "any";
    private static final String STATE_LEGACY = "legacy";
    private static final String[] ALL_STATES = { STATE_CONNECTED_MMWAVE, STATE_CONNECTED,
            STATE_NOT_RESTRICTED_RRC_IDLE, STATE_NOT_RESTRICTED_RRC_CON, STATE_RESTRICTED };
            STATE_NOT_RESTRICTED_RRC_IDLE, STATE_NOT_RESTRICTED_RRC_CON, STATE_RESTRICTED,
            STATE_LEGACY };

    /** Stop all timers and go to current state. */
    public static final int EVENT_UPDATE = 0;
+4 −9
Original line number Diff line number Diff line
@@ -1300,7 +1300,6 @@ public class DataConnection extends StateMachine {
    public NetworkCapabilities getNetworkCapabilities() {
        NetworkCapabilities result = new NetworkCapabilities();
        result.addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
        boolean areAllApnsUnmetered = false;

        if (mApnSetting != null) {
            final String[] types = ApnSetting.getApnTypesStringFromBitmask(
@@ -1375,10 +1374,8 @@ public class DataConnection extends StateMachine {
            // DataConnection has the immutable NOT_METERED capability only if all APNs in the
            // APN setting are unmetered according to carrier config METERED_APN_TYPES_STRINGS.
            // All other cases should use the dynamic TEMPORARILY_NOT_METERED capability instead.
            if (!ApnSettingUtils.isMetered(mApnSetting, mPhone)) {
                result.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_METERED);
                areAllApnsUnmetered = true;
            }
            result.setCapability(NetworkCapabilities.NET_CAPABILITY_NOT_METERED,
                    !ApnSettingUtils.isMetered(mApnSetting, mPhone));

            if (result.deduceRestrictedCapability()) {
                result.removeCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED);
@@ -1404,14 +1401,12 @@ public class DataConnection extends StateMachine {
            result.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_CONGESTED);
        }

        // Mark TEMPORARILY_NOT_METERED in the following cases,
        // Mark TEMPORARILY_NOT_METERED in the following cases:
        // 1. The non-restricted data is intended for unmetered use only.
        // 2. DcTracker set an unmetered override due to network/location (eg. 5G).
        // 3. SubscriptionManager set an unmetered override as requested by policy.
        // 4. All attached APN contexts for this DataConnection are unmetered
        if ((mUnmeteredUseOnly && !mRestrictedNetworkOverride) || mUnmeteredOverride
                || (mSubscriptionOverride & SUBSCRIPTION_OVERRIDE_UNMETERED) != 0
                || areAllApnsUnmetered) {
                || (mSubscriptionOverride & SUBSCRIPTION_OVERRIDE_UNMETERED) != 0) {
            result.addCapability(NetworkCapabilities.NET_CAPABILITY_TEMPORARILY_NOT_METERED);
        } else {
            result.removeCapability(NetworkCapabilities.NET_CAPABILITY_TEMPORARILY_NOT_METERED);
+1 −0
Original line number Diff line number Diff line
@@ -2308,6 +2308,7 @@ public class DcTracker extends Handler {
            setDataProfilesAsNeeded();
            setInitialAttachApn();
            sortApnContextByPriority();
            cleanUpConnectionsOnUpdatedApns(true, Phone.REASON_CARRIER_CHANGE);
            setupDataOnAllConnectableApns(Phone.REASON_CARRIER_CHANGE, RetryFailures.ALWAYS);
        } else {
            log("onCarrierConfigChanged: SIM is not loaded yet.");
+12 −0
Original line number Diff line number Diff line
@@ -99,6 +99,9 @@ public class EuiccCard extends UiccCard {
    private static final String DEV_CAP_EUTRAN = "eutran";
    private static final String DEV_CAP_NFC = "nfc";
    private static final String DEV_CAP_CRL = "crl";
    private static final String DEV_CAP_NREPC = "nrepc";
    private static final String DEV_CAP_NR5GC = "nr5gc";
    private static final String DEV_CAP_EUTRAN5GC = "eutran5gc";

    // These interfaces are used for simplifying the code by leveraging lambdas.
    private interface ApduRequestBuilder {
@@ -1059,6 +1062,15 @@ public class EuiccCard extends UiccCard {
            case DEV_CAP_CRL:
                devCapBuilder.addChildAsBytes(Tags.TAG_CTX_7, versionBytes);
                break;
            case DEV_CAP_NREPC:
                devCapBuilder.addChildAsBytes(Tags.TAG_CTX_9, versionBytes);
                break;
            case DEV_CAP_NR5GC:
                devCapBuilder.addChildAsBytes(Tags.TAG_CTX_10, versionBytes);
                break;
            case DEV_CAP_EUTRAN5GC:
                devCapBuilder.addChildAsBytes(Tags.TAG_CTX_11, versionBytes);
                break;
            default:
                loge("Invalid device capability name: " + devCap);
                break;
Loading