summaryrefslogtreecommitdiff
path: root/tree-diff.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-06-24 21:28:41 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-06-24 21:28:41 (GMT)
commit50f03c6676ed5ea040dd53272882d3aac2ee1b48 (patch)
tree8bf9680918762ffa077832674da9cca98c8c1888 /tree-diff.c
parentcda4ba30b1d6257524b9412ed4d7c44645fe0369 (diff)
parent88ce3ef636b1385e861ec0e9e2155248b999b032 (diff)
downloadgit-50f03c6676ed5ea040dd53272882d3aac2ee1b48.zip
git-50f03c6676ed5ea040dd53272882d3aac2ee1b48.tar.gz
git-50f03c6676ed5ea040dd53272882d3aac2ee1b48.tar.bz2
Merge branch 'ab/free-and-null'
A common pattern to free a piece of memory and assign NULL to the pointer that used to point at it has been replaced with a new FREE_AND_NULL() macro. * ab/free-and-null: *.[ch] refactoring: make use of the FREE_AND_NULL() macro coccinelle: make use of the "expression" FREE_AND_NULL() rule coccinelle: add a rule to make "expression" code use FREE_AND_NULL() coccinelle: make use of the "type" FREE_AND_NULL() rule coccinelle: add a rule to make "type" code use FREE_AND_NULL() git-compat-util: add a FREE_AND_NULL() wrapper around free(ptr); ptr = NULL
Diffstat (limited to 'tree-diff.c')
-rw-r--r--tree-diff.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/tree-diff.c b/tree-diff.c
index 467e381..bd6d65a 100644
--- a/tree-diff.c
+++ b/tree-diff.c
@@ -141,8 +141,7 @@ static struct combine_diff_path *path_appendnew(struct combine_diff_path *last,
/* if last->next is !NULL - it is a pre-allocated memory, we can reuse */
p = last->next;
if (p && (alloclen > (intptr_t)p->next)) {
- free(p);
- p = NULL;
+ FREE_AND_NULL(p);
}
if (!p) {
@@ -559,8 +558,7 @@ struct combine_diff_path *diff_tree_paths(
* (see path_appendnew() for details about why)
*/
if (p->next) {
- free(p->next);
- p->next = NULL;
+ FREE_AND_NULL(p->next);
}
return p;