From 71c26361ff0dba9391bfa59f2827cfca5a40a9af Mon Sep 17 00:00:00 2001 From: nhmall Date: Mon, 12 Dec 2022 14:37:40 -0500 Subject: [PATCH] follow-up: make the ifdef logic a bit clearer --- util/makedefs.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/util/makedefs.c b/util/makedefs.c index 448e73c42..e123a0740 100644 --- a/util/makedefs.c +++ b/util/makedefs.c @@ -379,41 +379,41 @@ getfp(const char* template, const char* tag, const char* mode, int flg) char *name = name_file(template, tag); FILE *rv = (FILE *) 0; boolean istemp = (flg & FLG_TEMPFILE) != 0; -#ifdef MD_USE_TMPFILE_S - errno_t err; -#endif #if !defined(HAS_NO_MKSTEMP) && !defined(MD_USE_TMPFILE_S) char tmpfbuf[MAXFNAMELEN]; int tmpfd; #endif - -#if !defined(HAS_NO_MKSTEMP) || defined(MD_USE_TMPFILE_S) - if (istemp) { #ifdef MD_USE_TMPFILE_S + errno_t err; +#endif + +#if defined(MD_USE_TMPFILE_S) + if (istemp) { err = tmpfile_s(&rv); #if defined(MSDOS) || defined(WIN32) if (!err && (!strcmp(mode, WRTMODE) || !strcmp(mode, RDTMODE))) { _setmode(fileno(rv), O_TEXT); } #endif -#else /* !MD_USE_TMPFILE_S */ + } else +#else /* MD_USE_TMPFILE_S */ +#ifndef HAS_NO_MKSTEMP + if (istemp) { (void) snprintf(tmpfbuf, sizeof tmpfbuf, DATA_TEMPLATE, "mdXXXXXX"); tmpfd = mkstemp(tmpfbuf); if (tmpfd >= 0) { rv = fdopen(tmpfd, WRTMODE); /* temp file is always read+write */ Unlink(tmpfbuf); } -#endif /* ?MD_USE_TMPFILE_S */ } else -#endif /* !HAS_NO_MKSTEMP || MD_USE_TMPFILE_S */ - rv = fopen(name, mode); +#endif +#endif /* MD_USE_TMPFILE_S */ + rv = fopen(name, mode); if (!rv) { Fprintf(stderr, "Can't open '%s' (mode=%s).\n", -#ifndef HAS_NO_MKSTEMP -#if !defined(MD_USE_TMPFILE_S) +#if !defined(HAS_NO_MKSTEMP) && !defined(MD_USE_TMPFILE_S) istemp ? tmpfbuf : -#endif #endif name, mode); makedefs_exit(EXIT_FAILURE);