summaryrefslogtreecommitdiffstats
path: root/src/libutil/map.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2017-01-18 17:42:29 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2017-01-18 17:42:29 +0000
commit87be736a89369f4c746e5a97352000eceaabac3a (patch)
tree80ecff5c1e2d79cc0a49032520537c0ba292b2fa /src/libutil/map.c
parent9d090bfa97a3de12fbc6123def434609349b9031 (diff)
downloadrspamd-87be736a89369f4c746e5a97352000eceaabac3a.tar.gz
rspamd-87be736a89369f4c746e5a97352000eceaabac3a.zip
[Fix] More leaks eliminated
Diffstat (limited to 'src/libutil/map.c')
-rw-r--r--src/libutil/map.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/libutil/map.c b/src/libutil/map.c
index af76c6979..3266b5cf3 100644
--- a/src/libutil/map.c
+++ b/src/libutil/map.c
@@ -1603,7 +1603,8 @@ rspamd_map_add_from_ucl (struct rspamd_config *cfg,
g_ptr_array_add (map->backends, bk);
if (!map->name) {
- map->name = g_strdup (ucl_object_tostring (cur));
+ map->name = rspamd_mempool_strdup (cfg->cfg_pool,
+ ucl_object_tostring (cur));
}
}
}
@@ -1621,16 +1622,14 @@ rspamd_map_add_from_ucl (struct rspamd_config *cfg,
else if (ucl_object_type (obj) == UCL_OBJECT) {
elt = ucl_object_lookup (obj, "name");
if (elt && ucl_object_type (elt) == UCL_STRING) {
- map->name = g_strdup (ucl_object_tostring (elt));
+ map->name = rspamd_mempool_strdup (cfg->cfg_pool,
+ ucl_object_tostring (elt));
}
elt = ucl_object_lookup (obj, "description");
if (elt && ucl_object_type (elt) == UCL_STRING) {
- if (map->description) {
- g_free (map->description);
- }
-
- map->description = g_strdup (ucl_object_tostring (elt));
+ map->description = rspamd_mempool_strdup (cfg->cfg_pool,
+ ucl_object_tostring (elt));
}
elt = ucl_object_lookup_any (obj, "timeout", "poll", "poll_time",
@@ -1657,7 +1656,8 @@ rspamd_map_add_from_ucl (struct rspamd_config *cfg,
g_ptr_array_add (map->backends, bk);
if (!map->name) {
- map->name = g_strdup (ucl_object_tostring (cur));
+ map->name = rspamd_mempool_strdup (cfg->cfg_pool,
+ ucl_object_tostring (cur));
}
}
}
@@ -1683,7 +1683,8 @@ rspamd_map_add_from_ucl (struct rspamd_config *cfg,
g_ptr_array_add (map->backends, bk);
if (!map->name) {
- map->name = g_strdup (ucl_object_tostring (elt));
+ map->name = rspamd_mempool_strdup (cfg->cfg_pool,
+ ucl_object_tostring (elt));
}
}
}