summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2019-08-07 13:01:45 +0200
committerThomas Haller <thaller@redhat.com>2019-09-23 13:13:23 +0200
commit3e39d2a5861a162cd6afb92ff60bee71fb0b2517 (patch)
tree8c8da5ef6aa57b471d749afe1c0e8c4056f49496
parent5aa50d7c87c85591f2dada6dd0af8efdfb1cf837 (diff)
downloadNetworkManager-3e39d2a5861a162cd6afb92ff60bee71fb0b2517.tar.gz
settings: shortcut check for whether to create auto-default wired connection
This check is only useful for devices that implement new_default_connection. We can shortcut the possibly expensive checks like have_connection_for_device(), which need to iterate all profiles.
-rw-r--r--src/settings/nm-settings.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/settings/nm-settings.c b/src/settings/nm-settings.c
index 45cfbd0683..09de8de8ed 100644
--- a/src/settings/nm-settings.c
+++ b/src/settings/nm-settings.c
@@ -3435,7 +3435,8 @@ device_realized (NMDevice *device, GParamSpec *pspec, NMSettings *self)
/* If the device isn't managed or it already has a default wired connection,
* ignore it.
*/
- if ( !nm_device_get_managed (device, FALSE)
+ if ( !NM_DEVICE_GET_CLASS (self)->new_default_connection
+ || !nm_device_get_managed (device, FALSE)
|| g_object_get_qdata (G_OBJECT (device), _default_wired_connection_quark ())
|| have_connection_for_device (self, device)
|| nm_config_get_no_auto_default_for_device (priv->config, device))