xfree86/parser: simplify #ifdef ladder

Rather than 'hacking' around symbol names and providing macros such as
'Local' just fold things and make the code more readable.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Emil Velikov 2016-04-17 20:30:46 +01:00 committed by Adam Jackson
parent 537276a5b8
commit 577bebe206

View File

@ -73,14 +73,7 @@
#define HAS_NO_UIDS #define HAS_NO_UIDS
#endif #endif
#ifdef HAS_NO_UIDS static int
#define doWriteConfigFile xf86writeConfigFile
#define Local /**/
#else
#define Local static
#endif
Local int
doWriteConfigFile(const char *filename, XF86ConfigPtr cptr) doWriteConfigFile(const char *filename, XF86ConfigPtr cptr)
{ {
FILE *cf; FILE *cf;
@ -134,24 +127,19 @@ doWriteConfigFile(const char *filename, XF86ConfigPtr cptr)
return 1; return 1;
} }
#ifndef HAS_NO_UIDS
int int
xf86writeConfigFile(const char *filename, XF86ConfigPtr cptr) xf86writeConfigFile(const char *filename, XF86ConfigPtr cptr)
{ {
#ifndef HAS_NO_UIDS
int ret; int ret;
if (getuid() != geteuid()) {
#if !defined(HAS_SAVED_IDS_AND_SETEUID) #if !defined(HAS_SAVED_IDS_AND_SETEUID)
int pid, p; int pid, p;
int status; int status;
void (*csig) (int); void (*csig) (int);
#else
int ruid, euid;
#endif
if (getuid() != geteuid()) {
#if !defined(HAS_SAVED_IDS_AND_SETEUID)
/* Need to fork to change ruid without loosing euid */ /* Need to fork to change ruid without loosing euid */
csig = signal(SIGCHLD, SIG_DFL); csig = signal(SIGCHLD, SIG_DFL);
switch ((pid = fork())) { switch ((pid = fork())) {
@ -178,6 +166,7 @@ xf86writeConfigFile(const char *filename, XF86ConfigPtr cptr)
return 0; return 0;
#else /* HAS_SAVED_IDS_AND_SETEUID */ #else /* HAS_SAVED_IDS_AND_SETEUID */
int ruid, euid;
ruid = getuid(); ruid = getuid();
euid = geteuid(); euid = geteuid();
@ -198,9 +187,7 @@ xf86writeConfigFile(const char *filename, XF86ConfigPtr cptr)
#endif /* HAS_SAVED_IDS_AND_SETEUID */ #endif /* HAS_SAVED_IDS_AND_SETEUID */
} }
else { else
return doWriteConfigFile(filename, cptr);
}
}
#endif /* !HAS_NO_UIDS */ #endif /* !HAS_NO_UIDS */
return doWriteConfigFile(filename, cptr);
}