summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2015-01-21 13:08:06 +0100
committerThomas Haller <thaller@redhat.com>2015-01-29 15:16:17 +0100
commite01a5c49d758b69ee346d452569dbea60fe64f7b (patch)
tree0fcf6a9b3003ad91aeac5be7c707e65bfd8151c5
parent9b2e44eb0d265d5f2868c9b430bd0d0ffb78521e (diff)
downloadNetworkManager-th/rh1066697_reload_config-4.tar.gz
config: don't duplicate check for changes in _config_changed_cb()th/rh1066697_reload_config-4
NMConfig already checks whether the configuration changes. No need to do it again.
-rw-r--r--src/nm-connectivity.c43
1 files changed, 20 insertions, 23 deletions
diff --git a/src/nm-connectivity.c b/src/nm-connectivity.c
index 6874476695..501bc9d915 100644
--- a/src/nm-connectivity.c
+++ b/src/nm-connectivity.c
@@ -344,7 +344,7 @@ nm_connectivity_check_finish (NMConnectivity *self,
/**************************************************************************/
-static gboolean
+static void
_set_property_uri (NMConnectivity *self, const char *uri, gboolean do_reschedule)
{
NMConnectivityPrivate *priv = NM_CONNECTIVITY_GET_PRIVATE (self);
@@ -366,38 +366,36 @@ _set_property_uri (NMConnectivity *self, const char *uri, gboolean do_reschedule
#endif
if (!g_strcmp0 (uri, priv->uri))
- return FALSE;
+ return;
g_free (priv->uri);
priv->uri = g_strdup (uri);
if (do_reschedule)
_reschedule_periodic_checks (self, TRUE);
g_object_notify (G_OBJECT (self), NM_CONNECTIVITY_URI);
- return TRUE;
}
-static gboolean
+static void
_set_property_interval (NMConnectivity *self, guint interval, gboolean do_reschedule)
{
NMConnectivityPrivate *priv = NM_CONNECTIVITY_GET_PRIVATE (self);
if (priv->interval == interval)
- return FALSE;
+ return;
priv->interval = interval;
if (do_reschedule)
_reschedule_periodic_checks (self, TRUE);
g_object_notify (G_OBJECT (self), NM_CONNECTIVITY_URI);
- return TRUE;
}
-static gboolean
+static void
_set_property_response (NMConnectivity *self, const char *response, gboolean do_reschedule)
{
NMConnectivityPrivate *priv = NM_CONNECTIVITY_GET_PRIVATE (self);
if (!g_strcmp0 (response, priv->response))
- return FALSE;
+ return;
/* a response %NULL means, DEFAULT_RESPONSE. Any other response
* (including "") is accepted. */
@@ -407,7 +405,6 @@ _set_property_response (NMConnectivity *self, const char *response, gboolean do_
if (do_reschedule)
_reschedule_periodic_checks (self, TRUE);
g_object_notify (G_OBJECT (self), NM_CONNECTIVITY_URI);
- return TRUE;
}
/**************************************************************************/
@@ -415,27 +412,27 @@ _set_property_response (NMConnectivity *self, const char *response, gboolean do_
static void
_config_changed_cb (NMConfig *config, NMConfigChangeFlags changes, NMConfigData *old_data, NMConnectivity *self)
{
+ NMConnectivityPrivate *priv = NM_CONNECTIVITY_GET_PRIVATE (self);
NMConfigData *new_data;
- gboolean changed = FALSE;
g_return_if_fail (NM_CONNECTIVITY_GET_PRIVATE (self)->config == config);
+ if (!NM_FLAGS_HAS (changes, NM_CONFIG_CHANGE_CONNECTIVITY))
+ return;
+
new_data = nm_config_get_data (config);
g_object_freeze_notify (G_OBJECT (self));
- changed |= _set_property_uri (self, nm_config_data_get_connectivity_uri (new_data), FALSE);
- changed |= _set_property_interval (self, nm_config_data_get_connectivity_interval (new_data), FALSE);
- changed |= _set_property_response (self, nm_config_data_get_connectivity_response (new_data), FALSE);
- if (changed) {
- NMConnectivityPrivate *priv = NM_CONNECTIVITY_GET_PRIVATE (self);
-
- if (priv->uri && priv->interval) {
- _LOGD ("update config: url=%s, interval=%u seconds, response=%s",
- priv->uri, priv->interval, str_if_set (priv->response, DEFAULT_RESPONSE));
- } else
- _LOGD ("update config: disabled");
- _reschedule_periodic_checks (self, TRUE);
- }
+ _set_property_uri (self, nm_config_data_get_connectivity_uri (new_data), FALSE);
+ _set_property_interval (self, nm_config_data_get_connectivity_interval (new_data), FALSE);
+ _set_property_response (self, nm_config_data_get_connectivity_response (new_data), FALSE);
+
+ if (priv->uri && priv->interval) {
+ _LOGD ("update config: url=%s, interval=%u seconds, response=%s",
+ priv->uri, priv->interval, str_if_set (priv->response, DEFAULT_RESPONSE));
+ } else
+ _LOGD ("update config: disabled");
+ _reschedule_periodic_checks (self, TRUE);
g_object_thaw_notify (G_OBJECT (self));
}