Author: adconrad
Date: 2013-02-04 02:53:34 +0000 (Mon, 04 Feb 2013)
New Revision: 5476

Modified:
   
glibc-package/branches/eglibc-2.17/debian/patches/any/unsubmitted-cloexec-conditional.diff
Log:
Add libio/fileops.c fix to unsubmitted-cloexec-conditional.diff

Modified: 
glibc-package/branches/eglibc-2.17/debian/patches/any/unsubmitted-cloexec-conditional.diff
===================================================================
--- 
glibc-package/branches/eglibc-2.17/debian/patches/any/unsubmitted-cloexec-conditional.diff
  2013-02-04 02:18:11 UTC (rev 5475)
+++ 
glibc-package/branches/eglibc-2.17/debian/patches/any/unsubmitted-cloexec-conditional.diff
  2013-02-04 02:53:34 UTC (rev 5476)
@@ -1,3 +1,39 @@
+diff --git a/libio/fileops.c b/libio/fileops.c
+index 61b61b3..80767f5 100644
+--- a/libio/fileops.c
++++ b/libio/fileops.c
+@@ -335,16 +335,24 @@ _IO_new_file_fopen (fp, filename, mode, is32not64)
+   if (result != NULL)
+     {
+ #ifndef __ASSUME_O_CLOEXEC
+-      if ((fp->_flags2 & _IO_FLAGS2_CLOEXEC) != 0 && __have_o_cloexec <= 0)
+-      {
+-        int fd = _IO_fileno (fp);
+-        if (__have_o_cloexec == 0)
++# ifdef O_CLOEXEC
++      if (__have_o_cloexec <= 0)
++# endif
++        {
++        if ((fp->_flags2 & _IO_FLAGS2_CLOEXEC) != 0)
+           {
++            int fd = _IO_fileno (fp);
+             int flags = __fcntl (fd, F_GETFD);
+-            __have_o_cloexec = (flags & FD_CLOEXEC) == 0 ? -1 : 1;
++# ifdef O_CLOEXEC
++            if (__have_o_cloexec == 0)
++              __have_o_cloexec = (flags & FD_CLOEXEC) == 0 ? -1 : 1;
++            if (__have_o_cloexec < 0)
++# endif
++              {
++                flags |= FD_CLOEXEC;
++                __fcntl (fd, F_SETFD, flags);
++              }
+           }
+-        if (__have_o_cloexec < 0)
+-          __fcntl (fd, F_SETFD, FD_CLOEXEC);
+       }
+ #endif
+ 
 diff --git a/locale/loadarchive.c b/locale/loadarchive.c
 index dd70c15..4edb03e 100644
 --- a/locale/loadarchive.c


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1u2cba-0006kp...@vasks.debian.org

Reply via email to