Date: Sun, 7 Sep 2003 16:50:15 -0700 (PDT) From: "Dan Langille" <dan@langille.org> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/56274: pthreads does not return correct value at EOT Message-ID: <200309072350.h87NoFPL088228@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/56274; it has been noted by GNATS.
From: "Dan Langille" <dan@langille.org>
To: FreeBSD-gnats-submit@FreeBSD.org
Cc:
Subject: Re: kern/56274: pthreads does not return correct value at EOT
Date: Sun, 07 Sep 2003 19:48:37 -0400
Here is the suggested patch.
--- uthread_write.c.org Sun Sep 7 10:58:31 2003
+++ uthread_write.c Sun Sep 7 15:41:34 2003
@@ -93,7 +93,7 @@
* write:
*/
if (blocking && ((n < 0 && (errno == EWOULDBLOCK ||
- errno == EAGAIN)) || (n >= 0 && num < nbytes))) {
+ errno == EAGAIN)) || (n > 0 && num < nbytes))) {
curthread->data.fd.fd = fd;
_thread_kern_set_timeout(NULL);
@@ -131,7 +131,7 @@
* If there was an error, return partial success
* (if any bytes were written) or else the error:
*/
- } else if (n < 0) {
+ } else if (n <= 0) {
if (num > 0)
ret = num;
else
--
Dan Langille : http://www.langille.org/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200309072350.h87NoFPL088228>
