summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Paul Jensen <pauljensen@google.com> 2015-01-10 01:59:43 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2015-01-10 01:59:45 +0000
commit60944390cde10c44064f1eda67eae5d76598f0d8 (patch)
tree6e4994a7937a9ec9015c511136fe4455c715f333
parent6d3cff12648f8ca3bcc0ac190d1d6d2e49514b66 (diff)
parent573a0354c5752769366b3365eb1be4adc569d096 (diff)
Merge "Remember to cancel lingering when a network again satsifies a NetworkRequest." into lmp-mr1-dev
-rw-r--r--services/core/java/com/android/server/ConnectivityService.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index 766e4c766ef9..0f8fd05a033f 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -2069,6 +2069,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
// 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 @@ public class ConnectivityService extends IConnectivityManager.Stub
} else {
if (DBG) log(" accepting network in place of null");
}
+ unlinger(newNetwork);
mNetworkForRequestId.put(nri.request.requestId, newNetwork);
newNetwork.addRequest(nri.request);
keep = true;