aboutsummaryrefslogtreecommitdiff
path: root/src/hash.c
diff options
context:
space:
mode:
authorFranklin Wei <git@fwei.tk>2016-04-03 12:15:44 -0400
committerFranklin Wei <git@fwei.tk>2016-04-03 12:15:44 -0400
commit724f4ee59b0af7b64a3317af3c9ee5d3f45e9fc4 (patch)
tree9e1f93726995bfd2d8e2e355f7ca3d0869be037f /src/hash.c
parent73c9244faee21a65e2143cc52dcbcf5cfe0648c6 (diff)
downloadnetcosm-724f4ee59b0af7b64a3317af3c9ee5d3f45e9fc4.zip
netcosm-724f4ee59b0af7b64a3317af3c9ee5d3f45e9fc4.tar.gz
netcosm-724f4ee59b0af7b64a3317af3c9ee5d3f45e9fc4.tar.bz2
netcosm-724f4ee59b0af7b64a3317af3c9ee5d3f45e9fc4.tar.xz
various fixes
Diffstat (limited to 'src/hash.c')
-rw-r--r--src/hash.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/hash.c b/src/hash.c
index ce91ceb..1cfd704 100644
--- a/src/hash.c
+++ b/src/hash.c
@@ -371,6 +371,14 @@ void hash_del_internal_node(void *ptr, const struct hash_export_node *node)
struct hash_map *map = ptr;
CHECK_SENTINEL(map);
+ struct hash_node *node_val = node->node;
+
+ if(map->free_data)
+ map->free_data((void*)node_val->data);
+ if(map->free_key)
+ map->free_key((void*)node_val->key);
+ free(node_val);
+
if(node->last)
((struct hash_node*)node->last)->next = node->next;
else