diff options
author | Thomas Haller <thaller@redhat.com> | 2016-03-24 15:58:28 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2016-03-29 11:56:27 +0200 |
commit | f8a6b13369cdaf73d28e069e00b6185967eca5ad (patch) | |
tree | a170f59f6e7cab2bab66484b4aa6e53a8b5e74f3 | |
parent | 564cf78f69520e1694b0ca05e5ad9d8b2fba18f2 (diff) | |
download | NetworkManager-f8a6b13369cdaf73d28e069e00b6185967eca5ad.tar.gz |
libnm-util: don't print any warnings during nm_setting_new_from_hash()
Warnings aren't great, especially if they can realistically be triggered
by a newer NetworkManager version. Just accept what we can and ignore
the rest silently.
-rw-r--r-- | libnm-util/nm-setting.c | 18 |
1 files changed, 3 insertions, 15 deletions
diff --git a/libnm-util/nm-setting.c b/libnm-util/nm-setting.c index add3ad9795..990d6fe73b 100644 --- a/libnm-util/nm-setting.c +++ b/libnm-util/nm-setting.c @@ -379,9 +379,6 @@ nm_setting_new_from_hash (GType setting_type, GHashTable *hash) const char *prop_name; GValue *src_value; GObjectClass *class; - guint n_params = 0; - GParameter *params; - int i; g_return_val_if_fail (G_TYPE_IS_INSTANTIATABLE (setting_type), NULL); g_return_val_if_fail (hash != NULL, NULL); @@ -390,11 +387,11 @@ nm_setting_new_from_hash (GType setting_type, GHashTable *hash) * already been used. */ class = g_type_class_ref (setting_type); - params = g_new0 (GParameter, g_hash_table_size (hash)); + + setting = (NMSetting *) g_object_new (setting_type, NULL); g_hash_table_iter_init (&iter, hash); while (g_hash_table_iter_next (&iter, (gpointer) &prop_name, (gpointer) &src_value)) { - GValue *dst_value = ¶ms[n_params].value; GParamSpec *param_spec; param_spec = g_object_class_find_property (class, prop_name); @@ -402,21 +399,12 @@ nm_setting_new_from_hash (GType setting_type, GHashTable *hash) /* Assume that any unrecognized property either can be ignored, or * else has a backward-compatibility equivalent. */ - g_debug ("Ignoring unrecognized property '%s'", prop_name); continue; } - g_value_init (dst_value, G_VALUE_TYPE (src_value)); - g_value_copy (src_value, dst_value); - params[n_params++].name = prop_name; + nm_g_object_set_property ((GObject *) setting, prop_name, src_value, NULL); } - setting = (NMSetting *) g_object_newv (setting_type, n_params, params); - - for (i = 0; i < n_params; i++) - g_value_unset (¶ms[i].value); - - g_free (params); g_type_class_unref (class); return setting; |