зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1123680 - Disable network prior to updating it to prevent unexpectedly and incorrectly added network. r=hchang
This commit is contained in:
Родитель
f2c8452e50
Коммит
45cf35521b
|
@ -3290,6 +3290,17 @@ WifiWorker.prototype = {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function connectToNetwork() {
|
||||||
|
WifiManager.updateNetwork(privnet, (function(ok) {
|
||||||
|
if (!ok) {
|
||||||
|
self._sendMessage(message, false, "Network is misconfigured", msg);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
networkReady();
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
let ssid = privnet.ssid;
|
let ssid = privnet.ssid;
|
||||||
let networkKey = getNetworkKey(privnet);
|
let networkKey = getNetworkKey(privnet);
|
||||||
let configured;
|
let configured;
|
||||||
|
@ -3311,14 +3322,22 @@ WifiWorker.prototype = {
|
||||||
// it can be sorted correctly in _reprioritizeNetworks() because the
|
// it can be sorted correctly in _reprioritizeNetworks() because the
|
||||||
// function sort network based on priority in configure list.
|
// function sort network based on priority in configure list.
|
||||||
configured.priority = privnet.priority;
|
configured.priority = privnet.priority;
|
||||||
WifiManager.updateNetwork(privnet, (function(ok) {
|
|
||||||
if (!ok) {
|
|
||||||
this._sendMessage(message, false, "Network is misconfigured", msg);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
networkReady();
|
// When investigating Bug 1123680, we observed that gaia may unexpectedly
|
||||||
}).bind(this));
|
// request to associate with incorrect password before successfully
|
||||||
|
// forgetting the network. It would cause the network unable to connect
|
||||||
|
// subsequently. Aside from preventing the racing forget/associate, we
|
||||||
|
// also try to disable network prior to updating the network.
|
||||||
|
WifiManager.getNetworkId(dequote(configured.ssid), function(netId) {
|
||||||
|
if (netId) {
|
||||||
|
WifiManager.disableNetwork(netId, function() {
|
||||||
|
connectToNetwork();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
connectToNetwork();
|
||||||
|
}
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
// networkReady, above, calls saveConfig. We want to remember the new
|
// networkReady, above, calls saveConfig. We want to remember the new
|
||||||
// network as being enabled, which isn't the default, so we explicitly
|
// network as being enabled, which isn't the default, so we explicitly
|
||||||
|
|
Загрузка…
Ссылка в новой задаче