diff options
Diffstat (limited to 'service')
-rw-r--r-- | service/java/com/android/server/wifi/WifiQualifiedNetworkSelector.java | 5 |
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); } } |