summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTambet Ingo <tambet@gmail.com>2008-11-12 13:20:06 +0000
committerTambet Ingo <tambet@gmail.com>2008-11-12 13:20:06 +0000
commite4ae149b37f2a25e3b4e6e545884d504921ea817 (patch)
tree820908d624149ec2945928e66ce24f81d3a81302
parent26573a3599558a102fcb2967df7ada592ce9e0b6 (diff)
2008-11-12 Tambet Ingo <tambet@gmail.com>
* system-settings/plugins/keyfile/nm-keyfile-connection.c (copy_one_secret) (add_secrets): Don't add empty secrets to the secrets hash table. git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4279 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
-rw-r--r--ChangeLog5
-rw-r--r--system-settings/plugins/keyfile/nm-keyfile-connection.c15
2 files changed, 16 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index f44f61d2..063992f1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-11-12 Tambet Ingo <tambet@gmail.com>
+
+ * system-settings/plugins/keyfile/nm-keyfile-connection.c (copy_one_secret)
+ (add_secrets): Don't add empty secrets to the secrets hash table.
+
2008-11-07 Dan Williams <dcbw@redhat.com>
* libnm-util/nm-setting-wireless.c
diff --git a/system-settings/plugins/keyfile/nm-keyfile-connection.c b/system-settings/plugins/keyfile/nm-keyfile-connection.c
index f037b2d7..6bf3e395 100644
--- a/system-settings/plugins/keyfile/nm-keyfile-connection.c
+++ b/system-settings/plugins/keyfile/nm-keyfile-connection.c
@@ -85,9 +85,12 @@ string_to_gvalue (const char *str)
static void
copy_one_secret (gpointer key, gpointer value, gpointer user_data)
{
- g_hash_table_insert ((GHashTable *) user_data,
- g_strdup ((char *) key),
- string_to_gvalue (value));
+ const char *value_str = (const char *) value;
+
+ if (value_str)
+ g_hash_table_insert ((GHashTable *) user_data,
+ g_strdup ((char *) key),
+ string_to_gvalue (value_str));
}
static void
@@ -103,7 +106,11 @@ add_secrets (NMSetting *setting,
return;
if (G_VALUE_HOLDS_STRING (value)) {
- g_hash_table_insert (secrets, g_strdup (key), string_to_gvalue (g_value_get_string (value)));
+ const char *tmp;
+
+ tmp = g_value_get_string (value);
+ if (tmp)
+ g_hash_table_insert (secrets, g_strdup (key), string_to_gvalue (tmp));
} else if (G_VALUE_HOLDS (value, DBUS_TYPE_G_MAP_OF_STRING)) {
/* Flatten the string hash by pulling its keys/values out */
g_hash_table_foreach (g_value_get_boxed (value), copy_one_secret, secrets);