summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2018-10-17 12:21:33 +0200
committerThomas Haller <thaller@redhat.com>2018-10-17 14:38:07 +0200
commit45913c11df17ced27996eb369414c8a827b3ca23 (patch)
tree85650f2e4c446b433e0973c29d9de43d4cf6e875
parentfd7115eeed527c92925b3b176add81d9a3605455 (diff)
downloadNetworkManager-45913c11df17ced27996eb369414c8a827b3ca23.tar.gz
core: fix checking multi-connect flag in nm_manager_get_best_device_for_connection()
We should not check @sett_conn, but @connection. Fixes: 09719bc479b63c8e5fef3950e980b263aca7eff5
-rw-r--r--src/nm-manager.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/nm-manager.c b/src/nm-manager.c
index 9ea83ef8db..6f7b456c77 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
@@ -3394,6 +3394,7 @@ nm_manager_get_best_device_for_connection (NMManager *self,
NMDeviceCheckConAvailableFlags flags;
gs_unref_ptrarray GPtrArray *all_ac_arr = NULL;
gs_free_error GError *local_best = NULL;
+ NMConnectionMultiConnect multi_connect;
nm_assert (!sett_conn || NM_IS_SETTINGS_CONNECTION (sett_conn));
nm_assert (!connection || NM_IS_CONNECTION (connection));
@@ -3405,7 +3406,9 @@ nm_manager_get_best_device_for_connection (NMManager *self,
flags = for_user_request ? NM_DEVICE_CHECK_CON_AVAILABLE_FOR_USER_REQUEST : NM_DEVICE_CHECK_CON_AVAILABLE_NONE;
- if ( _nm_connection_get_multi_connect (nm_settings_connection_get_connection (sett_conn)) == NM_CONNECTION_MULTI_CONNECT_SINGLE
+ multi_connect = _nm_connection_get_multi_connect (connection);
+
+ if ( multi_connect == NM_CONNECTION_MULTI_CONNECT_SINGLE
&& (ac = active_connection_find_by_connection (self, sett_conn, connection, NM_ACTIVE_CONNECTION_STATE_DEACTIVATING, &all_ac_arr))) {
/* if we have a profile which may activate on only one device (multi-connect single), then
* we prefer the device on which the profile is already active. It means to reactivate