summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiří Klimeš <jklimes@redhat.com>2013-11-28 10:59:08 +0100
committerJiří Klimeš <jklimes@redhat.com>2013-11-28 10:59:08 +0100
commit27e96c5ea6dc25b3f12c0893c5241380d2b83a10 (patch)
treee00120cfec4c1f8abd01714ec9d2ef51c46d67f3
parentc0a914709192913ce69565cdabf3ff8b21aeb20a (diff)
downloadNetworkManager-27e96c5ea6dc25b3f12c0893c5241380d2b83a10.tar.gz
libnm-util: fix initializing NMSetting::name property on other places toojk/setting-name-fixes
-rw-r--r--libnm-util/nm-connection.c2
-rw-r--r--libnm-util/nm-setting.c6
-rw-r--r--src/settings/plugins/keyfile/reader.c4
3 files changed, 8 insertions, 4 deletions
diff --git a/libnm-util/nm-connection.c b/libnm-util/nm-connection.c
index 7e588aeec1..c4dd2124e2 100644
--- a/libnm-util/nm-connection.c
+++ b/libnm-util/nm-connection.c
@@ -170,7 +170,7 @@ nm_connection_create_setting (const char *name)
type = nm_connection_lookup_setting_type (name);
if (type)
- setting = (NMSetting *) g_object_new (type, NULL);
+ setting = (NMSetting *) g_object_new (type, NM_SETTING_NAME, name, NULL);
return setting;
}
diff --git a/libnm-util/nm-setting.c b/libnm-util/nm-setting.c
index 6b5753afb2..3e85b5c620 100644
--- a/libnm-util/nm-setting.c
+++ b/libnm-util/nm-setting.c
@@ -386,7 +386,7 @@ duplicate_setting (NMSetting *setting,
GParamFlags flags,
gpointer user_data)
{
- if (flags & G_PARAM_WRITABLE)
+ if ((flags & G_PARAM_WRITABLE) && !(flags & G_PARAM_CONSTRUCT_ONLY))
g_object_set_property (G_OBJECT (user_data), name, value);
}
@@ -406,7 +406,9 @@ nm_setting_duplicate (NMSetting *setting)
g_return_val_if_fail (NM_IS_SETTING (setting), NULL);
- dup = g_object_new (G_OBJECT_TYPE (setting), NULL);
+ dup = g_object_new (G_OBJECT_TYPE (setting),
+ NM_SETTING_NAME, nm_setting_get_name (setting),
+ NULL);
g_object_freeze_notify (dup);
nm_setting_enumerate_values (setting, duplicate_setting, dup);
diff --git a/src/settings/plugins/keyfile/reader.c b/src/settings/plugins/keyfile/reader.c
index e8c06ff4af..401c7fdfd6 100644
--- a/src/settings/plugins/keyfile/reader.c
+++ b/src/settings/plugins/keyfile/reader.c
@@ -1207,7 +1207,9 @@ nm_keyfile_plugin_connection_from_file (const char *filename, GError **error)
base_setting_type = nm_connection_lookup_setting_type (ctype);
if (base_setting_type != G_TYPE_INVALID) {
- base_setting = (NMSetting *) g_object_new (base_setting_type, NULL);
+ base_setting = (NMSetting *) g_object_new (base_setting_type,
+ NM_SETTING_NAME, ctype,
+ NULL);
g_assert (base_setting);
nm_connection_add_setting (connection, base_setting);
}