diff options
author | Daniel Stenberg <daniel@haxx.se> | 2003-08-20 15:39:49 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2003-08-20 15:39:49 +0000 |
commit | 734e8d62292db6ca73f1167c96a3a457ee00b791 (patch) | |
tree | 845f63b9cefe1518e102915ec465dbc8a25a242b | |
parent | 61629d2c86aacd879cac5e5db619251a5eefdbf3 (diff) |
transfer fix for multi interface
-rw-r--r-- | lib/transfer.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/transfer.c b/lib/transfer.c index 463ca9d65..4264bb2e8 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -230,11 +230,11 @@ CURLcode Curl_readwrite(struct connectdata *conn, do { /* If we still have reading to do, we check if we have a readable - socket. Sometimes the reafdp is NULL, it no fd_set was done using + socket. Sometimes the reafdp is NULL, if no fd_set was done using the multi interface and then we can do nothing but to attempt a read to be sure. */ if((k->keepon & KEEP_READ) && - (FD_ISSET(conn->sockfd, readfdp))) { + (!readfdp || FD_ISSET(conn->sockfd, readfdp))) { bool readdone = TRUE; @@ -1103,11 +1103,11 @@ CURLcode Curl_readwrite(struct connectdata *conn, } /* if( read from socket ) */ /* If we still have writing to do, we check if we have a writable - socket. Sometimes the writefdp is NULL, it no fd_set was done using + socket. Sometimes the writefdp is NULL, if no fd_set was done using the multi interface and then we can do nothing but to attempt a write to be sure. */ if((k->keepon & KEEP_WRITE) && - (FD_ISSET(conn->writesockfd, writefdp)) ) { + (!writefdp || FD_ISSET(conn->writesockfd, writefdp)) ) { /* write */ int i, si; |