From f6ced470369099e3d837e661b59f9dc539ebde70 Mon Sep 17 00:00:00 2001 From: Franklin Wei Date: Sat, 26 Mar 2016 20:47:42 -0400 Subject: fix drop bug --- src/multimap.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/multimap.c') diff --git a/src/multimap.c b/src/multimap.c index 033b511..28a509c 100644 --- a/src/multimap.c +++ b/src/multimap.c @@ -192,6 +192,8 @@ size_t multimap_delete(void *ptr, const void *key, const void *val) struct multimap_node *node = hash_lookup(map->hash_tab, key); + struct hash_export_node internal_node = hash_get_internal_node(map->hash_tab, key); + if(!node) return 0; @@ -227,7 +229,7 @@ size_t multimap_delete(void *ptr, const void *key, const void *val) if(!node->n_pairs) { - hash_remove(map->hash_tab, key); + hash_del_internal_node(map->hash_tab, &internal_node); } return deleted; -- cgit v1.1