summary refs log tree commit diff
path: root/src/nmtui/nmt-page-ip4.c
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2022-01-13 22:30:39 +0100
committerMichael Biebl <biebl@debian.org>2022-01-13 22:30:39 +0100
commit88c227d90a6b7b388c5c85d72802a0ca8f05ed5c (patch)
tree71f32df6617802270e8a78574bd8e1637dc532f4 /src/nmtui/nmt-page-ip4.c
parente74c568b07b50b97873fb4ee1d776dedefbd54d6 (diff)
New upstream version 1.34.0 upstream/1.34.0
Diffstat (limited to 'src/nmtui/nmt-page-ip4.c')
-rw-r--r--src/nmtui/nmt-page-ip4.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/nmtui/nmt-page-ip4.c b/src/nmtui/nmt-page-ip4.c
index ecd71447..a7e4bdae 100644
--- a/src/nmtui/nmt-page-ip4.c
+++ b/src/nmtui/nmt-page-ip4.c
@@ -10,9 +10,11 @@
 
 #include "libnm-client-aux-extern/nm-default-client.h"
 
+#include "nmt-page-ip4.h"
+
 #include <stdlib.h>
 
-#include "nmt-page-ip4.h"
+#include "libnm-core-aux-intern/nm-libnm-core-utils.h"
 #include "nmt-ip-entry.h"
 #include "nmt-address-list.h"
 #include "nmt-route-editor.h"
@@ -84,14 +86,13 @@ nmt_page_ip4_constructed(GObject *object)
     NMConnection *     conn;
 
     conn  = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(ip4));
-    s_ip4 = nm_connection_get_setting_ip4_config(conn);
-    if (!s_ip4) {
-        s_ip4 = (NMSettingIPConfig *) nm_setting_ip4_config_new();
+    s_ip4 = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_IP4_CONFIG);
+    /* initialize 'method' to auto if it is NULL */
+    if (!nm_setting_ip_config_get_method(s_ip4)) {
         g_object_set(G_OBJECT(s_ip4),
                      NM_SETTING_IP_CONFIG_METHOD,
                      NM_SETTING_IP4_CONFIG_METHOD_AUTO,
                      NULL);
-        nm_connection_add_setting(conn, (NMSetting *) s_ip4);
     }
 
     widget = nmt_newt_popup_new(ip4methods);