diff options
author | Thomas Haller <thaller@redhat.com> | 2018-04-11 11:44:47 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2018-04-11 11:45:42 +0200 |
commit | f48b4af85035cbd9e539fc00e8432c2fece1c53d (patch) | |
tree | 54a270d96e9ddea9954c16959e00ab0715621158 | |
parent | 835a5f7248aeb618ae00dd5ae85647f34611d718 (diff) |
manager: merge set_state() in nm_manager_update_state() function
-rw-r--r-- | src/nm-manager.c | 44 |
1 files changed, 18 insertions, 26 deletions
diff --git a/src/nm-manager.c b/src/nm-manager.c index c267e465cf..034675b9e8 100644 --- a/src/nm-manager.c +++ b/src/nm-manager.c @@ -1142,26 +1142,6 @@ _nm_state_to_string (NMState state) } } -static void -set_state (NMManager *self, NMState state) -{ - NMManagerPrivate *priv = NM_MANAGER_GET_PRIVATE (self); - - if (priv->state == state) - return; - - priv->state = state; - - _LOGI (LOGD_CORE, "NetworkManager state is now %s", _nm_state_to_string (state)); - - _notify (self, PROP_STATE); - nm_dbus_object_emit_signal (NM_DBUS_OBJECT (self), - &interface_info_manager, - &signal_info_state_changed, - "(u)", - (guint32) priv->state); -} - static NMState find_best_device_state (NMManager *manager) { @@ -1232,26 +1212,38 @@ nm_manager_update_metered (NMManager *self) } static void -nm_manager_update_state (NMManager *manager) +nm_manager_update_state (NMManager *self) { NMManagerPrivate *priv; NMState new_state = NM_STATE_DISCONNECTED; - g_return_if_fail (NM_IS_MANAGER (manager)); + g_return_if_fail (NM_IS_MANAGER (self)); - priv = NM_MANAGER_GET_PRIVATE (manager); + priv = NM_MANAGER_GET_PRIVATE (self); - if (manager_sleeping (manager)) + if (manager_sleeping (self)) new_state = NM_STATE_ASLEEP; else - new_state = find_best_device_state (manager); + new_state = find_best_device_state (self); if ( new_state >= NM_STATE_CONNECTED_LOCAL && priv->connectivity_state == NM_CONNECTIVITY_FULL) { new_state = NM_STATE_CONNECTED_GLOBAL; } - set_state (manager, new_state); + if (priv->state == new_state) + return; + + priv->state = new_state; + + _LOGI (LOGD_CORE, "NetworkManager state is now %s", _nm_state_to_string (new_state)); + + _notify (self, PROP_STATE); + nm_dbus_object_emit_signal (NM_DBUS_OBJECT (self), + &interface_info_manager, + &signal_info_state_changed, + "(u)", + (guint32) priv->state); } static void |