"David Symonds" <dsymonds@xxxxxxxxx> wrote: > On Feb 17, 2008 1:58 PM, Jim Meyering <jim@xxxxxxxxxxxx> wrote: >> This change removes all useless if-before-free tests. >> E.g., it replace code like this >> >> if (some_expression) >> free (some_expression); >> >> with the now-equivalent >> >> free (some_expression); >> >> It is equivalent not just because POSIX has required free(NULL) >> to work for a long time, but simply because it has worked for >> so long that no reasonable porting target fails the test. >> Here's some evidence from nearly 1.5 years ago: >> >> http://www.winehq.org/pipermail/wine-patches/2006-October/031544.html > > That's not great evidence. It only tests 9 systems, and misses several If you mean mingw, cygwin, and M$-based ones, they're all ok. As far as I know, you have to go back to SunOS4 to find a system on which free(NULL) fails. That OS stopped being a reasonable porting target a couple years ago. > targets that Git already runs on. It seems like a fairly minor cleanup > for a definite loss of portability. It's a definite loss of portability if you can find a reasonable porting target for which free(NULL) fails. But even if you do, the fix is not to reject the clean-up, but to amend it with a wrapper function. That encapsulates the work-around in one place rather than polluting all of those files. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html