Merge "Disconnect ApnContexts in INITING state when error." into honeycomb-LTE
This commit is contained in:
@@ -1055,13 +1055,19 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!found) {
|
if (!found) {
|
||||||
// ApnContext does not have dcan reorted in data call list.
|
// ApnContext does not have dcac reported in data call list.
|
||||||
|
// Fetch all the ApnContexts that map to this dcac which are in
|
||||||
|
// INITING state too.
|
||||||
if (DBG) log("onDataStateChanged(ar): Connected apn not found in the list (" +
|
if (DBG) log("onDataStateChanged(ar): Connected apn not found in the list (" +
|
||||||
apnContext.toString() + ")");
|
apnContext.toString() + ")");
|
||||||
|
if (apnContext.getDataConnectionAc() != null) {
|
||||||
|
list.addAll(apnContext.getDataConnectionAc().getApnListSync());
|
||||||
|
} else {
|
||||||
list.add(apnContext);
|
list.add(apnContext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1110,10 +1116,12 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker {
|
|||||||
|
|
||||||
Collection<ApnContext> apns = dcac.getApnListSync();
|
Collection<ApnContext> apns = dcac.getApnListSync();
|
||||||
|
|
||||||
// filter out ApnContext with "Connected" state.
|
// filter out ApnContext with "Connected/Connecting" state.
|
||||||
ArrayList<ApnContext> connectedApns = new ArrayList<ApnContext>();
|
ArrayList<ApnContext> connectedApns = new ArrayList<ApnContext>();
|
||||||
for (ApnContext apnContext : apns) {
|
for (ApnContext apnContext : apns) {
|
||||||
if (apnContext.getState() == State.CONNECTED) {
|
if (apnContext.getState() == State.CONNECTED ||
|
||||||
|
apnContext.getState() == State.CONNECTING ||
|
||||||
|
apnContext.getState() == State.INITING) {
|
||||||
connectedApns.add(apnContext);
|
connectedApns.add(apnContext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user