summaryrefslogtreecommitdiff
path: root/service
diff options
context:
space:
mode:
Diffstat (limited to 'service')
-rw-r--r--service/java/com/android/server/wifi/WifiQualifiedNetworkSelector.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/service/java/com/android/server/wifi/WifiQualifiedNetworkSelector.java b/service/java/com/android/server/wifi/WifiQualifiedNetworkSelector.java
index ff8b7f684..ee7397a36 100644
--- a/service/java/com/android/server/wifi/WifiQualifiedNetworkSelector.java
+++ b/service/java/com/android/server/wifi/WifiQualifiedNetworkSelector.java
@@ -781,7 +781,9 @@ public class WifiQualifiedNetworkSelector {
potentialCandidate = network;
}
//update the cached candidate
- if (score > status.getCandidateScore()) {
+ if (score > status.getCandidateScore() || (score == status.getCandidateScore()
+ && status.getCandidate() != null
+ && scanResult.level > status.getCandidate().level)) {
status.setCandidate(scanResult);
status.setCandidateScore(score);
}
@@ -795,6 +797,7 @@ public class WifiQualifiedNetworkSelector {
currentHighestScore = highestScore;
scanResultCandidate = scanResult;
networkCandidate = configurationCandidateForThisScan;
+ networkCandidate.getNetworkSelectionStatus().setCandidate(scanResultCandidate);
}
}