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

Commit 782a3370 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fixed crash in data retry manager" into tm-dev am: 4ada638e

parents 96f78965 4ada638e
Loading
Loading
Loading
Loading
+19 −8
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ import android.telephony.AccessNetworkConstants;
import android.telephony.AccessNetworkConstants.TransportType;
import android.telephony.Annotation.DataFailureCause;
import android.telephony.Annotation.NetCapability;
import android.telephony.AnomalyReporter;
import android.telephony.DataFailCause;
import android.telephony.data.DataCallResponse;
import android.telephony.data.DataProfile;
@@ -59,6 +60,7 @@ import java.util.List;
import java.util.Locale;
import java.util.Objects;
import java.util.Set;
import java.util.UUID;
import java.util.concurrent.Executor;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@@ -1280,9 +1282,17 @@ public class DataRetryManager extends Handler {
            if (mDataRetryEntries.get(i) instanceof DataSetupRetryEntry) {
                DataSetupRetryEntry entry = (DataSetupRetryEntry) mDataRetryEntries.get(i);
                // count towards the last succeeded data setup.
                if (entry.setupRetryType == DataSetupRetryEntry.RETRY_TYPE_NETWORK_REQUESTS
                        && entry.networkRequestList.get(0)
                        .getApnTypeNetworkCapability() == networkCapability
                if (entry.setupRetryType == DataSetupRetryEntry.RETRY_TYPE_NETWORK_REQUESTS) {
                    if (entry.networkRequestList.isEmpty()) {
                        String msg = "Invalid data retry entry detected";
                        logl(msg);
                        loge("mDataRetryEntries=" + mDataRetryEntries);
                        AnomalyReporter.reportAnomaly(UUID.fromString(
                                "afeab78c-c0b0-49fc-a51f-f766814d7aa5"), msg);
                        continue;
                    }
                    if (entry.networkRequestList.get(0).getApnTypeNetworkCapability()
                            == networkCapability
                            && entry.appliedDataRetryRule.equals(dataRetryRule)) {
                        if (entry.getState() == DataRetryEntry.RETRY_STATE_SUCCEEDED
                                || entry.getState() == DataRetryEntry.RETRY_STATE_CANCELLED) {
@@ -1292,6 +1302,7 @@ public class DataRetryManager extends Handler {
                    }
                }
            }
        }
        return count;
    }