summaryrefslogtreecommitdiffstats
path: root/lib/libkse
diff options
context:
space:
mode:
authorjb <jb@FreeBSD.org>1998-06-14 09:36:14 +0000
committerjb <jb@FreeBSD.org>1998-06-14 09:36:14 +0000
commit3a45fc35f91e4e30fc366f0ea40376b137c13873 (patch)
tree7db059344e5ba6275a79d137007fee06ffe81f11 /lib/libkse
parentcc3e00bf7a256405c793961d149b36ca8d09e57a (diff)
downloadFreeBSD-src-3a45fc35f91e4e30fc366f0ea40376b137c13873.zip
FreeBSD-src-3a45fc35f91e4e30fc366f0ea40376b137c13873.tar.gz
If a short write, only loop if no error.
Diffstat (limited to 'lib/libkse')
-rw-r--r--lib/libkse/thread/thr_write.c4
-rw-r--r--lib/libkse/thread/thr_writev.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/lib/libkse/thread/thr_write.c b/lib/libkse/thread/thr_write.c
index 9732031..7aad66b1 100644
--- a/lib/libkse/thread/thr_write.c
+++ b/lib/libkse/thread/thr_write.c
@@ -29,7 +29,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: uthread_write.c,v 1.7 1998/06/09 23:21:04 jb Exp $
+ * $Id: uthread_write.c,v 1.8 1998/06/10 22:28:45 jb Exp $
*
*/
#include <sys/types.h>
@@ -94,7 +94,7 @@ write(int fd, const void *buf, size_t nbytes)
* write:
*/
if (blocking && ((n < 0 && (errno == EWOULDBLOCK ||
- errno == EAGAIN)) || num < nbytes)) {
+ errno == EAGAIN)) || (n >= 0 && num < nbytes))) {
_thread_run->data.fd.fd = fd;
_thread_kern_set_timeout(NULL);
diff --git a/lib/libkse/thread/thr_writev.c b/lib/libkse/thread/thr_writev.c
index f5cb788..81afcfd 100644
--- a/lib/libkse/thread/thr_writev.c
+++ b/lib/libkse/thread/thr_writev.c
@@ -29,7 +29,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: uthread_writev.c,v 1.8 1998/06/09 23:21:05 jb Exp $
+ * $Id: uthread_writev.c,v 1.9 1998/06/10 22:28:45 jb Exp $
*
*/
#include <sys/types.h>
@@ -145,7 +145,7 @@ writev(int fd, const struct iovec * iov, int iovcnt)
* write:
*/
if (blocking && ((n < 0 && (errno == EWOULDBLOCK ||
- errno == EAGAIN)) || idx < iovcnt)) {
+ errno == EAGAIN)) || (n >= 0 && idx < iovcnt))) {
_thread_run->data.fd.fd = fd;
_thread_kern_set_timeout(NULL);
OpenPOWER on IntegriCloud