* login/utmp_file.c (setutent_file): Minor optimization in case
authorUlrich Drepper <drepper@redhat.com>
Sat, 26 Jul 2008 22:35:15 +0000 (22:35 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sat, 26 Jul 2008 22:35:15 +0000 (22:35 +0000)
O_CLOEXEC is available.

ChangeLog
login/utmp_file.c

index eabfcb5..c58664c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-07-26  Ulrich Drepper  <drepper@redhat.com>
+
+       * login/utmp_file.c (setutent_file): Minor optimization in case
+       O_CLOEXEC is available.
+
 2008-07-24  Tom "spot" Callaway  <tcallawa@redhat.com>
 
        * Makeconfig: Define pie-ccflag and PIE-ccflag variables.
index a1c6a25..c0bd229 100644 (file)
@@ -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)