From: Thibault Godouet Date: Mon, 26 Nov 2012 20:31:30 +0000 (+0000) Subject: More portable code for va_arg() with mode_t (thank you Chris Calvey) X-Git-Tag: ver3_1_0~15 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=510315a96a9f72064d55a3cadde7c5d3ba14d394;p=fcron More portable code for va_arg() with mode_t (thank you Chris Calvey) (followed recommendation from http://www.gnu.org/software/gnulib/manual/html_node/va_005farg.html) --- diff --git a/subs.c b/subs.c index 204e5f5..25ce697 100644 --- a/subs.c +++ b/subs.c @@ -102,7 +102,7 @@ open_as_user(const char *pathname, uid_t openuid, gid_t opengid, int flags, ...) if (flags & O_CREAT) { va_start(ap, flags); - mode = va_arg(ap, mode_t); + mode = (sizeof(mode_t) < sizeof(int)) ? va_arg(ap, int) : va_arg(ap, mode_t); va_end(ap); } @@ -160,7 +160,7 @@ open_as_user(const char *pathname, uid_t openuid, gid_t opengid, int flags, ...) if (flags & O_CREAT) { va_start(ap, flags); - mode = va_arg(ap, mode_t); + mode = (sizeof(mode_t) < sizeof(int)) ? va_arg(ap, int) : va_arg(ap, mode_t); va_end(ap); }