diff options
author | René Scharfe <l.s.r@web.de> | 2017-06-25 10:01:04 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-06-29 10:46:16 -0700 |
commit | 76d8d45ffbc2cee911a66bdc5b6280a00da1a555 (patch) | |
tree | d29755913b4f57e9b56c5c50374d83e7a934af74 | |
parent | 88ce3ef636b1385e861ec0e9e2155248b999b032 (diff) | |
download | git-rs/free-and-null.tar.gz |
coccinelle: polish FREE_AND_NULL rulesrs/free-and-null
There are two rules for using FREE_AND_NULL in free.cocci, one for
pointer types and one for expressions. Both cause coccinelle to remove
empty lines and even newline characters between replacements for some
reason; consecutive "free(x);/x=NULL;" sequences end up as multiple
FREE_AND_NULL calls on the same time.
Remove the type rule, as the expression rule already covers it, and
rearrange the lines of the latter to place the addition of FREE_AND_NULL
between the removals, which causes coccinelle to leave surrounding
whitespace untouched.
Signed-off-by: Rene Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | contrib/coccinelle/free.cocci | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/contrib/coccinelle/free.cocci b/contrib/coccinelle/free.cocci index f2d97e755b..4490069df9 100644 --- a/contrib/coccinelle/free.cocci +++ b/contrib/coccinelle/free.cocci @@ -11,16 +11,8 @@ expression 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); +- E = NULL; |