Re: [PATCH] Remove useless if-before-free tests.
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Feb 17, 2008, 22:16 UTC
- Message-ID
- <alpine.LSU.1.00.0802172210470.30505@racer.site>
- In-Reply-To
- <871w7bz1ly.fsf@rho.meyering.net>
Hi,
On Sun, 17 Feb 2008, Jim Meyering wrote:
Show 6 quoted lines
> 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
>From this mail, we see that there is at least one target where this leads
to a crash (remember, git should run on more platforms than Wine).
However, such a crash is pretty obvious in our test-suite, I guess, and thus we could easily introduce something like this into git-compat-util.h should the need ever arise:
#ifdef FREE_NULL_CRASHES
inline void gitfree(void *ptr)
{
if (ptr)
free(ptr);
}
#define free gitfree
#endifIOW I like that type of cleanup.
FWIW I tested MinGW (which is the only system I have access to that I suspect of misbehaving), and it groks free(NULL) just fine.
Ciao, Dscho