Re: [PATCH] compat/fopen.c: avoid clobbering the system defined fopen macro
- From
Mike Ralphson <mike.ralphson@gmail.com>
- Date
- May 8, 2008, 07:59 UTC
- Message-ID
- <e2b179460805080059s76b07f30wedded8b1f5b17dfa@mail.gmail.com>
- In-Reply-To
- <4822AD19.6000609@viscovery.net>
2008/5/8 Johannes Sixt <j.sixt@viscovery.net>:
Show 25 quoted lines
> Mike Ralphson schrieb: >> I guess there may still be a case for not defining _LARGE_FILES by >> default on AIX as all the warnings may be off-putting or mask other >> issues. Maybe instead having a comment for those who need large >> pack-file support? Will submit amended Makefile patch if there's >> interest. > > Since with this patch we are treating fopen specially anyway, we could go > one step further and do this, too: > --- > diff --git a/git-compat-util.h b/git-compat-util.h > index b2708f3..dad4d48 100644 > --- a/git-compat-util.h > +++ b/git-compat-util.h > @@ -230,6 +230,9 @@ void *gitmemmem(const void *haystack, > #endif > > #ifdef FREAD_READS_DIRECTORIES > +#ifdef fopen > +#undef fopen > +#endif > #define fopen(a,b) git_fopen(a,b) > extern FILE *git_fopen(const char*, const char*); > #endif >
Loving your work! Squashes all the related warnings, re-tested etc. Technically, is the #ifdef / #endif actually required? Or is #undef'ing an undefined macro not portable? I agree it aids clarity for no cost.
Mike