diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-06-24 14:28:41 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-06-24 14:28:41 -0700 |
commit | 50f03c6676ed5ea040dd53272882d3aac2ee1b48 (patch) | |
tree | 8bf9680918762ffa077832674da9cca98c8c1888 /contrib | |
parent | Merge branch 'jk/warn-add-gitlink' (diff) | |
parent | *.[ch] refactoring: make use of the FREE_AND_NULL() macro (diff) | |
download | tgif-50f03c6676ed5ea040dd53272882d3aac2ee1b48.tar.xz |
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 'contrib')
-rw-r--r-- | contrib/coccinelle/free.cocci | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/contrib/coccinelle/free.cocci b/contrib/coccinelle/free.cocci index c03ba737e5..f2d97e755b 100644 --- a/contrib/coccinelle/free.cocci +++ b/contrib/coccinelle/free.cocci @@ -9,3 +9,18 @@ expression E; @@ - if (!E) free(E); + +@@ +type T; +T *ptr; +@@ +- free(ptr); +- ptr = NULL; ++ FREE_AND_NULL(ptr); + +@@ +expression E; +@@ +- free(E); +- E = NULL; ++ FREE_AND_NULL(E); |