X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=lib%2Fopen-safer.c;h=15bf6a65d01dda9e563ffc7aed925b54ac7ce0ef;hb=cf7169a2ede9bb08b71de68fe0c8bbecf827abe6;hp=ce493d5e3151c9c88f9a59877961a53f61465ca0;hpb=138fc7e67e3d9845cd7d81aad0e9c7724784f9b9;p=debian%2Ftar diff --git a/lib/open-safer.c b/lib/open-safer.c index ce493d5e..15bf6a65 100644 --- a/lib/open-safer.c +++ b/lib/open-safer.c @@ -1,6 +1,6 @@ /* Invoke open, but avoid some glitches. - Copyright (C) 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2005, 2006, 2008 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -38,9 +38,10 @@ open_safer (char const *file, int flags, ...) /* Assume mode_t promotes to int if and only if it is smaller. This assumption isn't guaranteed by the C standard, but we don't know of any real-world counterexamples. */ - mode = (sizeof (mode_t) < sizeof (int) - ? va_arg (ap, int) - : va_arg (ap, mode_t)); + if (sizeof (mode_t) < sizeof (int)) + mode = va_arg (ap, int); + else + mode = va_arg (ap, mode_t); va_end (ap); }