| Index: chrome/browser/chromeos/net/delay_network_call.cc
|
| diff --git a/chrome/browser/chromeos/net/delay_network_call.cc b/chrome/browser/chromeos/net/delay_network_call.cc
|
| index 8bcfff603ca4e3700353643c945b9a616ef92c7d..fdc588722d8f30b5d32d8b5f769d0d5149c5ee6f 100644
|
| --- a/chrome/browser/chromeos/net/delay_network_call.cc
|
| +++ b/chrome/browser/chromeos/net/delay_network_call.cc
|
| @@ -17,15 +17,31 @@ const unsigned chromeos::kDefaultNetworkRetryDelayMS = 3000;
|
|
|
| void chromeos::DelayNetworkCall(const base::Closure& callback,
|
| base::TimeDelta retry) {
|
| + bool delay_network_call = false;
|
| const NetworkState* default_network =
|
| NetworkHandler::Get()->network_state_handler()->DefaultNetwork();
|
| - bool delay_network_call = !default_network ||
|
| - !NetworkState::StateIsConnected(default_network->connection_state());
|
| + if (!default_network) {
|
| + delay_network_call = true;
|
| + DVLOG(1) << "DelayNetworkCall: No default network.";
|
| + } else {
|
| + std:: string default_connection_state = default_network->connection_state();
|
| + if (!NetworkState::StateIsConnected(default_connection_state)) {
|
| + delay_network_call = true;
|
| + DVLOG(1) << "DelayNetworkCall: "
|
| + << "Default network: " << default_network->name()
|
| + << " State: " << default_connection_state;
|
| + }
|
| + }
|
| if (!delay_network_call && NetworkPortalDetector::IsInitialized()) {
|
| NetworkPortalDetector* detector = NetworkPortalDetector::Get();
|
| - if (detector->GetCaptivePortalState(default_network->path()).status !=
|
| - NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE)
|
| + NetworkPortalDetector::CaptivePortalStatus status =
|
| + detector->GetCaptivePortalState(default_network->path()).status;
|
| + if (status != NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE) {
|
| delay_network_call = true;
|
| + DVLOG(1) << "DelayNetworkCall: Captive portal status for "
|
| + << default_network->name() << ": "
|
| + << NetworkPortalDetector::CaptivePortalStatusString(status);
|
| + }
|
| }
|
| if (delay_network_call) {
|
| content::BrowserThread::PostDelayedTask(
|
|
|