Fix mem leak - dedup - deduplicating backup program
HTML git clone git://bitreich.org/dedup/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/dedup/
DIR Log
DIR Files
DIR Refs
DIR Tags
DIR README
DIR LICENSE
---
DIR commit 13ea526261fd0d7821dbf271bd9ccd509ae4e6fd
DIR parent 2646d0e4e3cbc7b6fe481958d112d7ba1d654911
HTML Author: sin <sin@2f30.org>
Date: Tue, 5 Mar 2019 13:52:27 +0000
Fix mem leak
If the node already exists in the rb-tree a pointer to it is returned.
In that case we can free the temporary node that was allocated because
it will not be used.
Diffstat:
M cache.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
---
DIR diff --git a/cache.c b/cache.c
@@ -83,7 +83,8 @@ add_cache_entry(struct cache *cache, struct cache_entry *ent)
struct cache_node *node;
node = alloc_cache_node(ent);
- RB_INSERT(cache_head, &cache->nodes, node);
+ if (RB_INSERT(cache_head, &cache->nodes, node) != NULL)
+ free_cache_node(node);
}
int