diff options
Diffstat (limited to 'chromeos/network/network_state_handler.cc')
-rw-r--r-- | chromeos/network/network_state_handler.cc | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/chromeos/network/network_state_handler.cc b/chromeos/network/network_state_handler.cc index 0186204..d8e0432 100644 --- a/chromeos/network/network_state_handler.cc +++ b/chromeos/network/network_state_handler.cc @@ -376,8 +376,7 @@ void NetworkStateHandler::UpdateManagedStateProperties( // Signal connection state changed after all properties have been updated. if (network->connection_state() != prev_connection_state) OnNetworkConnectionStateChanged(network); - FOR_EACH_OBSERVER(NetworkStateHandlerObserver, observers_, - NetworkPropertiesUpdated(network)); + NetworkPropertiesUpdated(network); } network_event_log::AddEntry( kLogModule, "PropertiesReceived", @@ -397,8 +396,7 @@ void NetworkStateHandler::UpdateNetworkServiceProperty( if (network->connection_state() != prev_connection_state) OnNetworkConnectionStateChanged(network); - FOR_EACH_OBSERVER(NetworkStateHandlerObserver, observers_, - NetworkPropertiesUpdated(network)); + NetworkPropertiesUpdated(network); std::string detail = network->name() + "." + key; std::string vstr = ValueAsString(value); @@ -416,9 +414,7 @@ void NetworkStateHandler::UpdateNetworkServiceIPAddress( std::string detail = network->name() + ".IPAddress = " + ip_address; network_event_log::AddEntry(kLogModule, "NetworkIPChanged", detail); network->set_ip_address(ip_address); - FOR_EACH_OBSERVER( - NetworkStateHandlerObserver, observers_, - NetworkPropertiesUpdated(network)); + NetworkPropertiesUpdated(network); } void NetworkStateHandler::UpdateDeviceProperty(const std::string& device_path, @@ -545,4 +541,12 @@ void NetworkStateHandler::OnDefaultNetworkChanged() { DefaultNetworkChanged(default_network)); } +void NetworkStateHandler::NetworkPropertiesUpdated( + const NetworkState* network) { + if (network->path() == connecting_network_ && !network->IsConnectingState()) + connecting_network_.clear(); + FOR_EACH_OBSERVER(NetworkStateHandlerObserver, observers_, + NetworkPropertiesUpdated(network)); +} + } // namespace chromeos |