Merge "Remember to cancel lingering when a network again satsifies a NetworkRequest." into lmp-mr1-dev
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index 766e4c7..0f8fd05 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -2069,6 +2069,9 @@
// may trigger a re-evaluation of the network.
private void unlinger(NetworkAgentInfo nai) {
if (VDBG) log("Canceling linger of " + nai.name());
+ // If network has never been validated, it cannot have been lingered, so don't bother
+ // needlessly triggering a re-evaluation.
+ if (!nai.everValidated) return;
nai.networkLingered.clear();
nai.networkMonitor.sendMessage(NetworkMonitor.CMD_NETWORK_CONNECTED);
}
@@ -4034,6 +4037,7 @@
} else {
if (DBG) log(" accepting network in place of null");
}
+ unlinger(newNetwork);
mNetworkForRequestId.put(nri.request.requestId, newNetwork);
newNetwork.addRequest(nri.request);
keep = true;