summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/devices/nm-device.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
index f764f013d3..cb996cbcdd 100644
--- a/src/devices/nm-device.c
+++ b/src/devices/nm-device.c
@@ -3075,7 +3075,8 @@ ip4_config_merge_and_apply (NMDevice *self,
composite = nm_ip4_config_new (nm_device_get_ip_ifindex (self));
- ensure_con_ipx_config (self);
+ if (commit)
+ ensure_con_ipx_config (self);
if (priv->dev_ip4_config)
nm_ip4_config_merge (composite, priv->dev_ip4_config);
@@ -3652,7 +3653,8 @@ ip6_config_merge_and_apply (NMDevice *self,
/* If no config was passed in, create a new one */
composite = nm_ip6_config_new (nm_device_get_ip_ifindex (self));
- ensure_con_ipx_config (self);
+ if (commit)
+ ensure_con_ipx_config (self);
g_assert (composite);
/* Merge all the IP configs into the composite config */
@@ -6901,7 +6903,6 @@ update_ip_config (NMDevice *self, gboolean initial)
g_clear_object (&priv->dev_ip4_config);
capture_lease_config (self, priv->ext_ip4_config, &priv->dev_ip4_config, NULL, NULL);
}
- ensure_con_ipx_config (self);
/* This function was called upon external changes. Remove the configuration
* (addresses,routes) that is no longer present externally from the internal
@@ -6940,8 +6941,6 @@ update_ip_config (NMDevice *self, gboolean initial)
linklocal6_just_completed = priv->linklocal6_timeout_id &&
have_ip6_address (priv->ext_ip6_config, TRUE);
- ensure_con_ipx_config (self);
-
/* This function was called upon external changes. Remove the configuration
* (addresses,routes) that is no longer present externally from the internal
* config. This way, we don't re-add addresses that were manually removed