Index: chrome/browser/chromeos/login/network_screen.cc |
diff --git a/chrome/browser/chromeos/login/network_screen.cc b/chrome/browser/chromeos/login/network_screen.cc |
index 9afeb593e3fb0d1318044462b2c38c330126de9b..381218117652fca97a7192f73c81e3aa8d78277f 100644 |
--- a/chrome/browser/chromeos/login/network_screen.cc |
+++ b/chrome/browser/chromeos/login/network_screen.cc |
@@ -143,7 +143,11 @@ void NetworkScreen::NotifyOnConnection() { |
void NetworkScreen::OnConnectionTimeout() { |
StopWaitingForConnection(network_id_); |
- if (!view()->is_dialog_open() && |
+ NetworkLibrary* network = CrosLibrary::Get()->GetNetworkLibrary(); |
+ bool is_connected = network && network->Connected(); |
+ |
+ if (!is_connected && |
+ !view()->is_dialog_open() && |
!(help_app_.get() && help_app_->is_open())) { |
// Show error bubble. |
ClearErrors(); |
@@ -166,6 +170,9 @@ void NetworkScreen::UpdateStatus(NetworkLibrary* network) { |
if (!view() || !network) |
return; |
+ if (network->Connected()) |
+ ClearErrors(); |
+ |
if (network->ethernet_connected()) { |
StopWaitingForConnection( |
l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET)); |