[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r6291 - in glibc-package/trunk/debian: . patches/hurd-i386



Author: sthibault
Date: 2014-10-12 20:04:57 +0000 (Sun, 12 Oct 2014)
New Revision: 6291

Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/hurd-i386/tg-poll_errors_fixes.diff
Log:
patches/hurd-i386/tg-poll_errors_fixes.diff: Update patch, fixes
select returned value in case of errors. Closes: #764840.


Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2014-10-09 13:30:37 UTC (rev 6290)
+++ glibc-package/trunk/debian/changelog	2014-10-12 20:04:57 UTC (rev 6291)
@@ -6,6 +6,8 @@
   * patches/hurd-i386/local-libpthread-stacksize.diff: New patch to make
     libpthread stacks size default to 8MiB like on Linux, to avoid surprises
     with packages which assume the Linuxish default.
+  * patches/hurd-i386/tg-poll_errors_fixes.diff: Update patch, fixes
+    select returned value in case of errors. Closes: #764840.
 
   [ Petr Salinger ]
   * update testsuite-checking/expected-results-*-kfreebsd-gnu-*

Modified: glibc-package/trunk/debian/patches/hurd-i386/tg-poll_errors_fixes.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/tg-poll_errors_fixes.diff	2014-10-09 13:30:37 UTC (rev 6290)
+++ glibc-package/trunk/debian/patches/hurd-i386/tg-poll_errors_fixes.diff	2014-10-12 20:04:57 UTC (rev 6291)
@@ -243,7 +243,7 @@
  
  	pollfds[i].revents = revents;
        }
-@@ -511,6 +547,12 @@ _hurd_select (int nfds,
+@@ -511,6 +547,20 @@ _hurd_select (int nfds,
  	    if ((type & SELECT_RETURNED) == 0)
  	      type = 0;
  
@@ -251,7 +251,15 @@
 +	       readiness of the erring object and the next call hopefully
 +	       will get the error again.  */
 +	    if (type & SELECT_ERROR)
-+	      type = SELECT_ALL;
++	      {
++		type = 0;
++		if (readfds != NULL && FD_ISSET (i, readfds))
++		  type |= SELECT_READ;
++		if (writefds != NULL && FD_ISSET (i, writefds))
++		  type |= SELECT_WRITE;
++		if (exceptfds != NULL && FD_ISSET (i, exceptfds))
++		  type |= SELECT_URG;
++	      }
 +
  	    if (type & SELECT_READ)
  	      ready++;


Reply to: