On Fri, Aug 17, 2018 at 04:36:13PM +0200, Duy Nguyen wrote: > On Fri, Aug 17, 2018 at 3:05 PM Ævar Arnfjörð Bjarmason > <avarab@xxxxxxxxx> wrote: > > > > Change the few conditional uses of FREE_AND_NULL(x) to be > > unconditional. As noted in the standard[1] free(NULL) is perfectly > > valid, so we might as well leave this check up to the C library. > > I'm not trying to make you work more on this. But out of curiosity > would coccinelle help catch this pattern? Szeder's recent work on > running cocci automatically would help catch all future code like this > if we could write an spatch. Just fyi this seems to do the trick. Although I'm nowhere good at coccinelle to say if we should include this (or something like it) -- 8< -- diff --git a/contrib/coccinelle/free.cocci b/contrib/coccinelle/free.cocci index 4490069df9..f8e018d104 100644 --- a/contrib/coccinelle/free.cocci +++ b/contrib/coccinelle/free.cocci @@ -16,3 +16,9 @@ expression E; - free(E); + FREE_AND_NULL(E); - E = NULL; + +@@ +expression E; +@@ +- if (E) { FREE_AND_NULL(E); } ++ FREE_AND_NULL(E); -- 8< -- -- Duy