aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2004-04-21 22:47:01 +0000
committerrsc <devnull@localhost>2004-04-21 22:47:01 +0000
commit2b4b2ae19107f2c7e45ca6ab6f73c9c8a5fb84dd (patch)
tree18f85b571adf4289ba2bc269a4c8e0f658bb6b43 /src
parent63b67323012151914b3e1915580c512524b470c5 (diff)
downloadplan9port-2b4b2ae19107f2c7e45ca6ab6f73c9c8a5fb84dd.tar.gz
plan9port-2b4b2ae19107f2c7e45ca6ab6f73c9c8a5fb84dd.tar.bz2
plan9port-2b4b2ae19107f2c7e45ca6ab6f73c9c8a5fb84dd.zip
better error handling
Diffstat (limited to 'src')
-rw-r--r--src/libthread/fdwait.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libthread/fdwait.c b/src/libthread/fdwait.c
index 5dd7e868..927fc64f 100644
--- a/src/libthread/fdwait.c
+++ b/src/libthread/fdwait.c
@@ -233,8 +233,9 @@ threadread(int fd, void *a, long n)
threadfdnoblock(fd);
again:
+ errno = 0;
nn = read(fd, a, n);
- if(nn < 0){
+ if(nn <= 0){
if(errno == EINTR)
goto again;
if(errno == EAGAIN || errno == EWOULDBLOCK){