summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2017-05-04 14:42:00 +0200
committerThomas Haller <thaller@redhat.com>2017-05-06 14:52:29 +0200
commite7b32fb2b89e242d8da032c28ca4e134b2b5d965 (patch)
tree648231cdfa83c0d07fc57362a21b939142182fd9
parent1d08391ed197caea4e100480f35c21e1974ff01f (diff)
downloadNetworkManager-e7b32fb2b89e242d8da032c28ca4e134b2b5d965.tar.gz
keyfile: fix memleak in read_hash_of_string()
Fixes: 10661abe174862c71603cb385e20fee5a6671997 (cherry picked from commit cb33e3f3c2fa606f88415f13bec5cf8f79d3ef0c)
-rw-r--r--libnm-core/nm-keyfile-reader.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libnm-core/nm-keyfile-reader.c b/libnm-core/nm-keyfile-reader.c
index 080988f08d..8e4a2ee5fd 100644
--- a/libnm-core/nm-keyfile-reader.c
+++ b/libnm-core/nm-keyfile-reader.c
@@ -715,7 +715,8 @@ mac_address_parser_INFINIBAND (KeyfileReaderInfo *info, NMSetting *setting, cons
static void
read_hash_of_string (GKeyFile *file, NMSetting *setting, const char *key)
{
- char **keys, **iter;
+ gs_strfreev char **keys = NULL;
+ const char *const*iter;
char *value;
const char *setting_name = nm_setting_get_name (setting);
@@ -723,7 +724,7 @@ read_hash_of_string (GKeyFile *file, NMSetting *setting, const char *key)
if (!keys || !*keys)
return;
- for (iter = keys; *iter; iter++) {
+ for (iter = (const char *const*) keys; *iter; iter++) {
value = nm_keyfile_plugin_kf_get_string (file, setting_name, *iter, NULL);
if (!value)
continue;
@@ -739,7 +740,6 @@ read_hash_of_string (GKeyFile *file, NMSetting *setting, const char *key)
}
g_free (value);
}
- g_strfreev (keys);
}
static gsize