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
This commit is contained in:
@ -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;
|
||||
|
Reference in New Issue
Block a user