diff options
Diffstat (limited to 'login/utmp_file.c')
-rw-r--r-- | login/utmp_file.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/login/utmp_file.c b/login/utmp_file.c index a1c6a25716..c0bd229952 100644 --- a/login/utmp_file.c +++ b/login/utmp_file.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2002, 2003, 2004, 2007 Free Software Foundation, Inc. +/* Copyright (C) 1996-2004, 2007, 2008 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com> and Paul Janzen <pcj@primenet.com>, 1996. @@ -167,10 +167,11 @@ setutent_file (void) # ifdef O_CLOEXEC if (__have_o_cloexec == 0) __have_o_cloexec = (result & FD_CLOEXEC) ? 1 : -1; -# endif - result = fcntl_not_cancel (file_fd, F_SETFD, - result | FD_CLOEXEC); + if (__have_o_cloexec < 0) +# endif + result = fcntl_not_cancel (file_fd, F_SETFD, + result | FD_CLOEXEC); } if (result == -1) |