Don't use varargs CPP macros in fccache.c. (bug 8733)

src/fccache.c uses a trick to try and use a function name that is also a
macro name. It does this using the varargs args() macro. Replace that
with separate macros for each number of formals.
This commit is contained in:
Kean Johnston 2006-12-02 13:36:56 -08:00 committed by Keith Packard
parent 72ffe6536a
commit c9c6875014
1 changed files with 7 additions and 6 deletions

View File

@ -826,16 +826,17 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
* Hokey little macro trick to permit the definitions of C functions * Hokey little macro trick to permit the definitions of C functions
* with the same name as CPP macros * with the same name as CPP macros
*/ */
#define args(x...) (x) #define args1(x) (x)
#define args2(x,y) (x,y)
const FcChar8 * const FcChar8 *
FcCacheDir args(const FcCache *c) FcCacheDir args1(const FcCache *c)
{ {
return FcCacheDir (c); return FcCacheDir (c);
} }
FcFontSet * FcFontSet *
FcCacheCopySet args(const FcCache *c) FcCacheCopySet args1(const FcCache *c)
{ {
FcFontSet *old = FcCacheSet (c); FcFontSet *old = FcCacheSet (c);
FcFontSet *new = FcFontSetCreate (); FcFontSet *new = FcFontSetCreate ();
@ -858,19 +859,19 @@ FcCacheCopySet args(const FcCache *c)
} }
const FcChar8 * const FcChar8 *
FcCacheSubdir args(const FcCache *c, int i) FcCacheSubdir args2(const FcCache *c, int i)
{ {
return FcCacheSubdir (c, i); return FcCacheSubdir (c, i);
} }
int int
FcCacheNumSubdir args(const FcCache *c) FcCacheNumSubdir args1(const FcCache *c)
{ {
return c->dirs_count; return c->dirs_count;
} }
int int
FcCacheNumFont args(const FcCache *c) FcCacheNumFont args1(const FcCache *c)
{ {
return FcCacheSet(c)->nfont; return FcCacheSet(c)->nfont;
} }