coccinelle: polish FREE_AND_NULL rules
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>maint
parent
88ce3ef636
commit
76d8d45ffb
|
@ -10,17 +10,9 @@ 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);
|
||||
- E = NULL;
|
||||
|
|
Loading…
Reference in New Issue