summaryrefslogtreecommitdiff
path: root/lib/sendf.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2003-05-06 08:19:36 +0000
committerDaniel Stenberg <daniel@haxx.se>2003-05-06 08:19:36 +0000
commitc41c05d4f40fd28317e7ed971900e154def71c17 (patch)
treef7cab0d205723ea3f0cb9949a33ac1ca20a7b4d2 /lib/sendf.c
parentf1ea54e07a4bdae2b14150caceadb96a974a2c7f (diff)
downloadcurl-c41c05d4f40fd28317e7ed971900e154def71c17.tar.gz
Kevin Delafield reported another case where we didn't correctly check for
EAGAIN but only EWOULDBLOCK, which caused badness on HPUX. We also check for and act the same on EINTR errors as well now.
Diffstat (limited to 'lib/sendf.c')
-rw-r--r--lib/sendf.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/sendf.c b/lib/sendf.c
index 94927c28c..1538061e8 100644
--- a/lib/sendf.c
+++ b/lib/sendf.c
@@ -278,7 +278,7 @@ CURLcode Curl_write(struct connectdata *conn, int sockfd,
may be EWOULDBLOCK or on some systems EAGAIN when it returned
due to its inability to send off data without blocking. We
therefor treat both error codes the same here */
- if((EWOULDBLOCK == err) || (EAGAIN == err))
+ if((EWOULDBLOCK == err) || (EAGAIN == err) || (EINTR == err))
#endif
{
/* this is just a case of EWOULDBLOCK */
@@ -399,7 +399,7 @@ int Curl_read(struct connectdata *conn,
#ifdef WIN32
if(WSAEWOULDBLOCK == err)
#else
- if(EWOULDBLOCK == err)
+ if((EWOULDBLOCK == err) || (EAGAIN == err) || (EINTR == err))
#endif
return -1;
}